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)
做这样的事情的正确语法是什么?
问题答案:
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)
但第一种方法可能更易读。