如何在向每列插入null时,仅将一个值作为变量插入sqlite3表

2024-04-23 20:56:52 发布

您现在位置:Python中文网/ 问答频道 /正文

我想修改下面的代码,以便只向表中插入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列,并且它将创建数据库条目,除了主键之外,没有任何其他信息


Tags: 应用程序inputsqlitedataparamwithnullsqlite3
1条回答
网友
1楼 · 发布于 2024-04-23 20:56:52

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

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

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

相关问题 更多 >