2013-07-08 67 views
1

print msg回報['2013-07-08 10','temperature','kitchen','22.5']sqlite3.OperationnalError:近 「TEXT」:語法錯誤

當我運行這段代碼:

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 

但我可以」看看有什麼不對。我在其他程序中使用類似的代碼,它完美的工作。

回答

0

插入數據庫時​​,不需要那些TEXT標記。你只在創建數據庫表時使用它。只要確保您在數據庫中插入的值與創建表時所提供的值相同即可。

+0

謝謝。我明白我的問題是什麼:我使用了具有相同表名但不是相同列的舊數據庫。因爲我已經刪除了舊的數據庫,所以ew已經創建並且工作。 –

相關問題