【问题标题】:Passing SQLite variables in Python在 Python 中传递 SQLite 变量
【发布时间】:2009-11-25 00:44:23
【问题描述】:

我正在用 python 编写一个应用程序并使用 sqlite。我有一个字符串列表,我也想将其添加到数据库中,其中每个元素代表一些与将要放置的列一致的数据。

目前我有这样的东西

cursor.execute("""insert into credit
                    values ('Citi','5567','visa',6000,9.99,'23',9000)""")

我可以轻松添加字符串,但不知道如何添加列表中的变量。

【问题讨论】:

    标签: python sqlite


    【解决方案1】:

    使用参数.execute()

    query = """
         INSERT INTO credit
             (bank, number, card, int1, value, type, int2)
         VALUES
              (?, ?, ?, ?, ?, ?, ?)
            """
    data =  ['Citi', '5567', 'visa', 6000, 9.99, '23', 9000]
    
    cursor.execute(query, data)
    

    根据PEP249

    .execute(operation[,parameters])

    准备并执行数据库操作(查询或命令)。参数可以作为序列或映射提供,并将绑定到操作中的变量。变量以特定于数据库的表示法指定(有关详细信息,请参阅模块的 paramstyle 属性)

    检查paramstyle

    >>> import sqlite3
    >>> print sqlite3.paramstyle
    qmark
    

    qmark 表示您使用? 作为参数。

    【讨论】:

      猜你喜欢
      • 2012-07-12
      • 1970-01-01
      • 2013-07-16
      • 1970-01-01
      • 2017-05-26
      • 2015-11-16
      • 1970-01-01
      • 2017-02-13
      相关资源
      最近更新 更多