gpt4 book ai didi

python - pyodbc 没有更新表

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

基本上我正在尝试更新 Table1 中的 Column1_mbgl 字段数据,所有这些数据都基于 MS Access 数据库。脚本执行时没有任何错误,但是当检查表时没有发生更新。我尝试了代码中所示的两个选项,但均未成功。第二个选项是直接从 MS Access 查询生成的 SQL 代码。有人可以建议我在代码中缺少什么吗?

#import pypyodbc
import pyodbc

# MS ACCESS DB CONNECTION
pyodbc.lowercase = False
conn = pyodbc.connect(
r"Driver={Microsoft Access Driver (*.mdb, *.accdb)};" +
r"Dbq=C:\temp\DB_access.accdb;")

# OPEN CURSOR AND EXECUTE SQL
cur = conn.cursor()

# Option 1 - no error and no update
cur.execute("UPDATE Table1 SET Column1_mbGL = Column2_mbGL-0.3 WHERE ((Column3_name='PZ01') AND (DateTime Between #6/14/2016 14:0:0# AND #6/16/2016 12:0:0#) AND (TYPE='LOG'))");

# Option 2 - no error and no update
#cur.execute("UPDATE Table1 SET Table1.Column1_mbGL = [Table1]![Column2_mbGL]-0.3 WHERE (((Table1.Column3_name)='PZ01') AND ((Table1.DateTime) Between #6/14/2016 14:0:0# And #6/16/2016 12:0:0#) AND ((Table1.TYPE)='LOG'))");

cur.close()
conn.close()

最佳答案

您在执行 UPDATE 查询后忘记了 conn.commit()Python database API指定默认情况下关闭“autocommit”打开连接,因此需要显式commit

关于python - pyodbc 没有更新表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37969801/

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