【问题标题】:Python MySQLdb placeholders syntaxPython MySQLdb 占位符语法
【发布时间】:2010-03-27 02:47:01
【问题描述】:

我想使用本示例中的占位符:

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)

执行此类操作的正确语法是什么?

【问题讨论】:

    标签: python mysql pylons


    【解决方案1】:
    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)
    

    但第一种方式可能更具可读性。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-30
      • 1970-01-01
      • 2012-08-24
      • 1970-01-01
      • 1970-01-01
      • 2013-12-15
      相关资源
      最近更新 更多