gpt4 book ai didi

python - 为什么 mySQL Python 查询不插入新条目?

转载 作者:行者123 更新时间:2023-11-29 06:48:24 24 4
gpt4 key购买 nike

所以我尝试向 mySQL 数据库添加一个新条目。这里的问题是,它增加了 id,但确实添加了条目。经过一番谷歌搜索后,我发现失败的 INSERT 查询也会增加 AUTO_INCRMENTd 值(在我的例子中为 id)。

mySQL 表是使用以下命令创建的如果不存在则创建表 TS3_STAMM_1 (id INT(6) UNSIGNED AUTO_INCRMENT PRIMARY KEY, name VARCHAR(64) NOT NULL, ts3_uid VARCHAR(64) NOT NULL, 点 INT(8) UNSIGNED NOT NULL);它由 Python 的 MySQLdb 模块内的函数 qServer.execute(querystring) 调用。

然后我使用 qString = "INSERT INTO TS3_STAMM_1 (name, ts3_uid, points) VALUES ('{}', '{}', {})".format(name, uid, pnts) (数据类型是正确的,我至少进行了四次检查)使用函数 qServer.exectue(qString) 将新条目插入数据库。

但是它增加了 ID,但没有添加条目。所以我的猜测是它的查询失败,但为什么呢?这是怎么发生的?如何解决?

简单的SELECT查询以同样的方式工作,手动添加数据也可以正常工作。只有python查询失败。

注意:qServer 是到服务器的连接,其定义为:

try:
qConn = MySQLdb.connect(host="...", user="...", passwd="...", db="...")
qServer = qConn.cursor()
except OperationalError:
print("Cannot connect to mySQL Database! Aborting...")
exit(1)

最佳答案

使用提交 Luke。

>>> cursor.execute("INSERT INTO employees (first_name) VALUES (%s)", ('Jane', ))
>>> qConn.commit()

使用 str.format 创建 SQL 查询是个坏主意。

关于python - 为什么 mySQL Python 查询不插入新条目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48475781/

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