im尝试将值插入到用户要求更改的列中,称为surnamereq
,而用户更改称为name1
。 money_spent
是表的名称,first_name
是用户正在更改其值的列。
这是应该用SQL编写的方式(我认为):
INSERT INTO money_spent(first_name)
WHERE last_name = surnamereq
VALUES(name1)
这是我在python中得到的东西
cursor.execute("INSERT INTO money_spent(first_name) WHERE last_name = ?, surnamereq VALUES(name1)")
谢谢
答案 0 :(得分:1)
documentation for the .execute method显示方法调用的形式为
执行(sql,*参数)
并指出
可选参数可以按DB API所指定的序列或单个值进行传递。
所以,你可以做
surnamereq = 'Thompson'
fname = 'Gord'
#
sql = "UPDATE money_spent SET first_name = ? WHERE last_name = ?"
params = (fname, surnamereq)
cursor.execute(sql, params)
或
surnamereq = 'Thompson'
fname = 'Gord'
#
sql = "UPDATE money_spent SET first_name = ? WHERE last_name = ?"
cursor.execute(sql, fname, surnamereq)
请注意,第二种方法是DB API的pyodbc专有扩展。