Python pysqlite不接受我的qmark参数化

Ove*_*own 1 python sqlite pysqlite python-db-api

我认为我是一个傻瓜,也许不是进口正确的包装,但是当我做...


from pysqlite2 import dbapi2 as sqlite
import types
import re
import sys
...
    def create_asgn(self):
        stmt = "CREATE TABLE ? (login CHAR(8) PRIMARY KEY NOT NULL, grade INTEGER NOT NULL)"
        stmt2 = "insert into asgn values ('?', ?)"
        self.cursor.execute(stmt, (sys.argv[2],))
        self.cursor.execute(stmt2, [sys.argv[2], sys.argv[3]])
...
 I get the error pysqlite2.dbapi2.OperationalError: near "?": syntax error 

这对我来说没什么意义,因为文档显示pysqlite是qmark参数化的.我是python和db-api的新手,帮助我!谢谢

nos*_*klo 7

那是因为参数只能传递给VALUES.表名不能参数化.

您还可以在第二个查询的参数化参数周围引用.删除引号,转义由下划线库自动处理.