【问题标题】:How to insert only one value into sqlite3 table as an variable while inserting null to every else column如何在 sqlite3 表中只插入一个值作为变量,同时将 null 插入到其他每一列
【发布时间】:2021-03-30 17:21:39
【问题描述】:

我想修改下面的代码,以便我只将input 变量插入到表中。所有其他列应存储NULL 值。我认为最明显的解决方案是声明column2 = NULLcolumn3 = NULL,但我在想还有其他方法吗?

import sqlite3

column1 = input()

sqliteConnection = sqlite3.connect('database.db')
cursor = sqliteConnection.cursor()

sqlite_insert_with_param = "INSERT INTO ideas (column1, column2, column3) VALUES (?, ?, ?);" #column1 is primary key

data_tuple = (column1, column2, column3)
cursor.execute(sqlite_insert_with_param, data_tuple)
sqliteConnection.commit()

cursor.close()

最终我希望它在 Tkinter 应用程序中工作,该应用程序提示用户使用 Entry-widget 输入第 1 列,它会创建数据库条目,除了主键之外没有任何其他信息。

【问题讨论】:

    标签: python sqlite tkinter insert


    【解决方案1】:

    如果您从列表中删除其他列,例如:

    sqlite_insert_with_param = "INSERT INTO ideas (column1) VALUES (?);"
    data_tuple = (column1,)
    cursor.execute(sqlite_insert_with_param, data_tuple)
    sqliteConnection.commit()
    

    那么column2column3 在新插入的行中将是null,除非您在表的定义中为它们定义了默认值。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-11-17
      • 2020-09-17
      • 1970-01-01
      • 2016-10-09
      • 1970-01-01
      • 1970-01-01
      • 2017-10-20
      • 2023-03-17
      相关资源
      最近更新 更多