我有一个名为bizIds的变量,它根据以前的查询分配给一个数组:
bizIds = data[i]
我正在尝试在我的数据库中插入数据,其中特定的业务ID在表中。
到目前为止,这是我的代码:
bizIds = data[i]
#do some stuff
cursor = db.cursor()
##Inserting into Datebase
writeIt = """INSERT INTO business (`Industry`,`Company Form`) VALUES (%s, %s) WHERE `Business ID` = %s"""
##Executing the query
cursor.execute(writeIt, (Industry.text, CompanyForm.text, bizIds))
db.commit()
当我运行程序时,收到错误消息:(1064, 'You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near \'WHERE Business ID = ("\'0986132\'",)\' at line 1')
因此它在括号中显示正确的业务ID,但它不会插入记录。
有什么建议吗?
答案 0 :(得分:1)
目前尚不清楚Industry.text和CompanyForm.text是什么,但我认为它们来自你脚本的其他部分。
我认为您需要使用UPDATE而不是INSERT INTO。
writeIt = """UPDATE business SET `Industry` = %s, `Company Form` = %s WHERE `Business ID` = %s"""
INSERT INTO添加记录,不支持WHERE子句。这是原始错误的来源。您似乎想要更新已存在的记录。