SQLITE变量传递命令的语法错误?

2024-10-02 16:30:52 发布

您现在位置:Python中文网/ 问答频道 /正文

我在python中使用sqlite3,希望得到我的列“Pcode”的数据,情况是“Pcode”存储在一个变量中,比如“b”

        b= "Pcode"
        b = str(b)
        c.execute('''SELECT ? FROM AddStock''',(b,))
        results = c.fetchall()
        print(results)

预期结果如下

[('***data from database***',), ('***data from database***',)]

但得到的结果是:

[('Pcode',), ('Pcode',)]

我不知道为什么我会得到这样的结果


Tags: 数据fromexecutedata情况selectsqlite3database
2条回答

如果您使用的是sqlite3,则此代码将提供正确的行:

conn = sqlite3.connect(db_file)
b= "Pcode"
b = str(b)

cur = conn.cursor()
cur.execute('''SELECT ? FROM AddStock''',(b,))

print(cur.fetchall())

使用python脚本方法在列表中添加变量

c.execute("SELECT "+b+" FROM AddStock")

这是相同的语法

相关问题 更多 >