不同类型的多个参数sqlite3 python
我似乎不知道如何在同一个查询中参数化多个不同的格式(real和string)不同类型的多个参数sqlite3 python,python,parameters,sqlite,sql-update,where-clause,Python,Parameters,Sqlite,Sql Update,Where Clause,我似乎不知道如何在同一个查询中参数化多个不同的格式(real和string) conn = sqlite3.connect(dbfile) c = conn.cursor() def update_data(text,var2): c.execute("UPDATE T SET T12M = ? WHERE date = ?", (var2, text)) conn.commit() 如果我硬编码我想要的东西,但我似乎无法让变量号/文本工作。对于ex,这可以工作,但我想传入变
conn = sqlite3.connect(dbfile)
c = conn.cursor()
def update_data(text,var2):
c.execute("UPDATE T SET T12M = ? WHERE date = ?", (var2, text))
conn.commit()
如果我硬编码我想要的东西,但我似乎无法让变量号/文本工作。对于ex,这可以工作,但我想传入变量号/字符串:
更新T SET T12M=10,其中date='9/28/2015';尝试使用大括号和.format()方法:
当你说它不起作用时,你是什么意思?你确信该日期在表中表示吗?我的意思是它根本不更新T12M列中的值。如果我键入update t SET T12M=10,其中date='9/28/2015'它起作用。我正在用update_数据('9/28/2015',20)测试它您似乎有相反顺序的参数,即在调用中日期第一,但在执行/更新中日期第二。
c.execute("UPDATE T SET T12M = {} WHERE date = {}".format(var2, text))