我已经完成了一些SQLite表的创建并正在执行说明。执行指令时,出现以下错误:
sqlite3.OperationalError: near "Category": syntax error
我的大多数表都使用相同的格式,下面是一个这样的表的示例。
CategoryTableSQL = """ CREATE TABLE IF NOT EXISTS Category(
CategoryID integer PRIMARY KEY AUTOINCREMENT
Category text NOT NULL
);"""
databaseNewTable(Connection, CategoryTableSQL)
答案 0 :(得分:2)
您忘记了SQL语句中表字段的声明之间的逗号:应该是这样的。始终使用逗号分隔字段创建语句。当然,对于最后一个字段,您将创建=)。另外,在将您的字段命名为与表相同的名称时,我会格外小心。为了防止混乱。只是我的两分钱
CREATE TABLE IF NOT EXISTS Category(
CategoryID integer PRIMARY KEY AUTOINCREMENT,
Category text NOT NULL
);
答案 1 :(得分:0)
我认为,您只需要在AUTOINCREMENT单词后添加','符号即可。 :-) 像这样:
CategoryTableSQL = """ CREATE TABLE IF NOT EXISTS Category(
CategoryID integer PRIMARY KEY AUTOINCREMENT,
Category text NOT NULL
);"""
databaseNewTable(Connection, CategoryTableSQL)