sqlite3.OperationnalError:“TEXT”附近:语法错误

时间:2013-07-08 10:17:12

标签: sqlite python-3.x

print msg返回['2013-07-08 10','temperature','kitchen','22.5']

当我运行此代码时:

data="bdd.sq3"
conn=sqlite3.connect(data)
cur=conn.cursor()
cur.execute("CREATE TABLE IF NOT EXISTS temperature (date TEXT, type TEXT, zone TEXT, value REAL)")
cur.execute("INSERT INTO temperature (date TEXT, type TEXT, zone TEXT, value REAL) VALUES(?,?,?,?)",(msg))

我有这个错误:

cur.execute("INSERT INTO temperature (date TEXT, type TEXT, zone TEXT, value REAL) VALUES(?,?,?,?)",(msg))    
sqlite3.OperationnalError: near "TEXT": syntax error

但我看不出有什么不对。我在其他程序中使用类似的代码,它工作得很好。

1 个答案:

答案 0 :(得分:0)

在数据库中插入时,不需要这些TEXT标记。您只在创建数据库表时使用它。只需确保您在数据库中插入的值与创建表时的类型相同。