我在发生以下错误时尝试了一些Python3-sqlite3代码
import sqlite3
conn=sqlite3.connect("../db/mydb.db")
conn.execute('''CREATE TABLE SCHEDULER IF NOT EXISTS (SNO INTEGER PRIMARY KEY AUTOINCREMENT, STRTIME TEXT, ENDTIME TEXT, MODE TEXT)''')
conn.execute('''INSERT INTO SCHEDULER VALUES (1, 'XXXX', 'XXXX', 'MODE')''')
conn.close()
我收到错误
追踪(最近一次通话): 文件" db.py",第4行,in conn.execute('''''创建表调度程序,如果不存在(SNO INTEGER PRIMARY KEY AUTOINCREMENT,STRTIME TEXT,ENDTIME TEXT,MODE TEXT)''' ) sqlite3.OperationalError:near" IF":语法错误
答案 0 :(得分:1)
IF NOT EXISTS
必须提前,如下所示:
CREATE TABLE IF NOT EXISTS SCHEDULER (SNO INTEGER PRIMARY KEY AUTOINCREMENT, STRTIME TEXT, ENDTIME TEXT, MODE TEXT);
如果这仍然不起作用,那么您的SQLite版本真的旧版本(早于版本3.3.0)。
答案 1 :(得分:0)
SCHEDULER是你的表的名字,它需要引用如“SCHEDULER”IF