gpt4 book ai didi

python - 无法使用python将数据插入sqlite3

转载 作者:太空宇宙 更新时间:2023-11-04 08:58:13 25 4
gpt4 key购买 nike

我可以使用 Python 在 sqlite3 数据库中成功创建表,但我无法向其中插入数据

# coding: utf-8

import sqlite3

text = "Welcome"

def cur_execute(data):
con = sqlite3.connect('sqlite3.db')
try:
with con:
cur = con.cursor()
cur.execute(data)
con.commit()
except Exception as why:
print(why)
finally:
if con: con.close()

cur_execute("CREATE TABLE Hello(test TEXT)")
cur_execute("INSERT INTO Hello VALUES(?)", (text))

向我显示此错误:cur_execute() 正好接受 1 个参数(给定 2 个)

谢谢。

最佳答案

@zoosuck 的答案有效,但它也删除了为库内置的 sql 卫生。您可以通过执行以下操作来使用内置的 sql 清理:

import sqlite3

text = "Welcome"

def cur_execute(data, args=()):
con = sqlite3.connect('sqlite3.db')
with con:
cur = con.cursor()
cur.execute(data, args)
con.commit()

cur_execute("CREATE TABLE Hello(test TEXT)")
cur_execute("INSERT INTO Hello VALUES(?)", (text, ))

请注意,使用with 语句,您不需要关闭连接。我删除了连接周围的 try catch,以便在发生错误时显示完整的错误。

此外,您的原始代码存在问题。 cur_execute("INSERT INTO Hello VALUES(?)", (text)) 中的第二个参数需要是元组/列表。

关于python - 无法使用python将数据插入sqlite3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28183410/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com