Sqlite3 插入项目与功能
Sqlite3 insert item with function
所以我在将项目添加到我的 sqlite3 数据库时遇到了问题。我使用我设计的 gui 应用程序。我使用该 gui 上的一个按钮将电子邮件地址添加到我的数据库中。那里一切都很完美。问题出在数据库端。这是函数的代码 add_email(email_adress)
def add_email(email_adress):
c = conn.cursor()
print(email_adress)
c.execute("INSERT INTO email VALUES(?)", (email_adress,))
conn.commit()
print('Fini')
所以问题是当我点击按钮时一切都是正确的。该函数被正确调用。我可以在第一个打印中看到我尝试添加的电子邮件地址,我可以看到最后一个打印意味着它应该正确提交。
我真的不明白我做错了什么,如果有帮助就好了。谢谢!
我认为您的查询中缺少 table 名称,插入查询理想情况下应采用以下格式
INSERT INTO TABLE_NAME (COLUMN_NAME) VALUES (?)
我不知道你的真实姓名 table 但应该改成这样
c.execute("INSERT INTO YOUR_TABLE_NAME (email) VALUES (?)",(email_address,))
它可以帮助打印 conn.commit
的输出,因为它可能指示您查询的 success/failure。
所以我在将项目添加到我的 sqlite3 数据库时遇到了问题。我使用我设计的 gui 应用程序。我使用该 gui 上的一个按钮将电子邮件地址添加到我的数据库中。那里一切都很完美。问题出在数据库端。这是函数的代码 add_email(email_adress)
def add_email(email_adress):
c = conn.cursor()
print(email_adress)
c.execute("INSERT INTO email VALUES(?)", (email_adress,))
conn.commit()
print('Fini')
所以问题是当我点击按钮时一切都是正确的。该函数被正确调用。我可以在第一个打印中看到我尝试添加的电子邮件地址,我可以看到最后一个打印意味着它应该正确提交。
我真的不明白我做错了什么,如果有帮助就好了。谢谢!
我认为您的查询中缺少 table 名称,插入查询理想情况下应采用以下格式
INSERT INTO TABLE_NAME (COLUMN_NAME) VALUES (?)
我不知道你的真实姓名 table 但应该改成这样
c.execute("INSERT INTO YOUR_TABLE_NAME (email) VALUES (?)",(email_address,))
它可以帮助打印 conn.commit
的输出,因为它可能指示您查询的 success/failure。