gpt4 book ai didi

mysql - pymysql游标执行SQL语言失败

转载 作者:行者123 更新时间:2023-11-30 21:26:44 24 4
gpt4 key购买 nike

我想用pymysql更新mysql数据库中的数据。但是我不知道我的代码出了什么问题。IDE:pycharm

name1=input("enter the new one")
stu_ID=int(input("enter student ID"))
sql=f."UPDATE student SET name={name1} WHERE ID={stu_ID}"
cursor. execute(sql)

最佳答案

由于您的帖子中缺少错误,我假设代码工作正常,但数据在执行结束时未更新。如果这个假设不成立,请添加错误。

在您的代码中不存在数据库连接声明,从我的角度来看,问题可能就在那里。事实上,对于更新语句,您应该添加参数 autocommit=True

检查以下示例:

database_connection=pymysql.connect(host=my_host, 
user=my_user,
password=my_psw,
db=my_db_name,
charset=my_db_charset,
cursorclass=my_cursor_type,
autocommit=True)

这是因为 pymysql 在更新的情况下启动隐式事务。
所以在你的情况下(没有自动提交),在查询执行结束时,数据被回滚。

另一个不同的选项,如果您不想在数据库连接声明中添加自动提交,请在查询之后添加一个明确的提交,如下所示:

database_connection.commit()

关于mysql - pymysql游标执行SQL语言失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58550537/

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