无法在没有"sqlite3.OperationalError: near "的情况下将记录添加到数据库 ( ": syntax error"



我为我的程序做了一个'dummy'版本,只包含前四个字段,但是一旦我添加了其余的字段,这个错误就会不断出现。我所见过的任何有这个问题的人都是由于其他一些不适用于我的问题。我觉得这是一件小事,我错过了,如果有人能帮我弄清楚这将是一个很大的帮助,谢谢。我希望这是足够的代码来解决这个问题。即使有人能告诉我,问题出在这段代码之外,这将是一个很大的帮助。


connection = sqlite3.connect("TempDatabase.db")
cursor = connection.cursor()
sqlCommand = """
CREATE TABLE IF NOT EXISTS OrderTb1N1
(
OrderID INTEGER NOT NULL,
dateOrdered DATE,
customerFirstname TEXT,
customerSurname TEXT,
customerPhoneNumber TEXT,
collectionDate DATE,
flavours TEXT,
glaze TEXT,
toppings TEXT,
personalisation TEXT,
orderSize TEXT,
price REAL,
paymentStatus TEXT,
employeeName TEXT

primary key (OrderID)
)
"""
cursor.execute(sqlCommand)
connection.commit()
connection.close()

由于数据库已经存在,我打算让这段代码添加额外的字段(来自'dummy'测试),并允许我输入新记录。我已经删除了模拟测试期间的所有记录。根据错误输出,错误在'sqlCommand='中。

你应该在employeeName TEXT后面使用逗号(,)

正确的代码,

connection = sqlite3.connect("TempDatabase.db")
cursor = connection.cursor()
sqlCommand = "
CREATE TABLE IF NOT EXISTS OrderTb1N1
(
OrderID INTEGER NOT NULL,
dateOrdered DATE,
customerFirstname TEXT,
customerSurname TEXT,
customerPhoneNumber TEXT,
collectionDate DATE,
flavours TEXT,
glaze TEXT,
toppings TEXT,
personalisation TEXT,
orderSize TEXT,
price REAL,
paymentStatus TEXT,
employeeName TEXT,
primary key (OrderID)
)
"
cursor.execute(sqlCommand)
connection.commit()
connection.close()

最新更新