简体   繁体   English

Python MySQLdb占位符语法

[英]Python MySQLdb placeholders syntax

I'd like to use placeholders as seen in this example: 我想使用在此示例中看到的占位符:

cursor.execute ("""
    UPDATE animal SET name = %s
    WHERE name = %s
    """, ("snake", "turtle"))

Except I'd like to have the query be its own variable as I need to insert a query into multiple databases, as in: 除了我希望将查询作为自己的变量外,因为我需要将查询插入多个数据库中,如下所示:

query = """UPDATE animal SET name = %s
           WHERE name = %s
           """, ("snake", "turtle"))
cursor.execute(query)
cursor2.execute(query)
cursor3.execute(query)

What would be the proper syntax for doing something like this? 做这样的事情的正确语法是什么?

query = """UPDATE animal SET name = %s
           WHERE name = %s
           """
values = ("snake", "turtle")

cursor.execute(query, values)
cursor2.execute(query, values)

or if you want group them together... 或者如果您想将它们组合在一起...

arglist = [query, values]
cursor.execute(*arglist)
cursor2.execute(*arglist)

but it's probably more readable to do it the first way. 但是第一种方式可能更容易理解。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM