使用pyodbc的SQL Update语句

17

我正在使用pyodbc驱动程序通过SQL连接到Microsoft Access表格。有人知道我如何替换此表格中的字段吗?我考虑过删除该行,然后将该行放回去,但这会由于Access中的自动编号而更改主键。

我已经为插入进度表格准备好了以下内容:

        cnxn = pyodbc.connect('Driver={Microsoft Access Driver (*.mdb, *.accdb)}; Dbq=C:\\Users\\...............(file location)')
        cursor = cnxn.cursor()
        cursor.execute("insert into Progress(CockpitDrill,Mirrors,MoveOff,TurnLeft) values (?,?,?,?)",cockpit,mirrors,moveOff,turnLeft,)
        cnxn.commit()

那么如何替换这些字段呢?假设我想将CockpitDrill从“2”更改为“3”,它们都是字符串。

非常感谢任何帮助。

1个回答

41

您可以执行UPDATE语句,就像您现在执行INSERT一样:

    cnxn = pyodbc.connect('Driver={Microsoft Access Driver (*.mdb, *.accdb)}; Dbq=C:\\Users\\...............(file location)')
    cursor = cnxn.cursor()
    cursor.execute("UPDATE progress SET CockpitDrill = ? WHERE progress_primarykey = ?", newcockpitdrillvalue, oldprimarykeyvalue)
    cnxn.commit()

这有帮助吗?"progress_primarykey" 是我给您的数据库表中主键字段起的假设名称。假设您只想更改一条记录并且知道其主键。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接