Python MySQLdb 占位符语法
我想使用占位符,就像这个例子中那样:
cursor.execute ("""
UPDATE animal SET name = %s
WHERE name = %s
""", ("snake", "turtle"))
不过,我希望查询能够作为一个独立的变量,因为我需要把这个查询插入到多个数据库中,像这样:
query = """UPDATE animal SET name = %s
WHERE name = %s
""", ("snake", "turtle"))
cursor.execute(query)
cursor2.execute(query)
cursor3.execute(query)
那么,像这样做的正确写法是什么呢?
1 个回答
5
query = """UPDATE animal SET name = %s
WHERE name = %s
"""
values = ("snake", "turtle")
cursor.execute(query, values)
cursor2.execute(query, values)
或者如果你想把它们放在一起...
arglist = [query, values]
cursor.execute(*arglist)
cursor2.execute(*arglist)
不过用第一种方式可能更容易读懂。