开发者

Python SQLite3 Problem with?

开发者 https://www.devze.com 2023-01-24 01:22 出处:网络
Im currently learning SQLite3 with Python. I\'m looking at the manual, and it tells me to do something like the following:

Im currently learning SQLite3 with Python. I'm looking at the manual, and it tells me to do something like the following:

data = (tablename, )
c.execute("CREATE TABLE IF NOT EXISTS ?(uid INTEGER PRIMARY KEY, title TEXT NOT NULL, due开发者_运维百科date INTEGER NOT NULL, description TEXT, archived INTEGER)", data)

I'm getting an error, however. It's stated as follows:

sqlite3.OperationalError: near "?": syntax error

What's going on?


sadly the DB-API’s parameter substitution ? don't work with table name , columns name .. and it's the same in all DB API in python.

the DB-API’s parameter substitution just work for value like in SELECT * FROM table WHERE id = ?, so you will have to do string formating or just put the name table in the string directly.

query = "CREATE TABLE IF NOT EXISTS %s (uid INTEGER PRIMARY KEY, title TEXT NOT NULL, duedate INTEGER NOT NULL, description TEXT, archived INTEGER)" % table_name

conn.execute(query)
0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号