首页 > 解决方案 > 我在 python 中收到 SQL Insert 语法错误

问题描述

CREATE TABLE jongmok(Date text, Jongmok_num int, Jongmok_name text)

"INSERT INTO jongmok(Date, Jongmok_num, Jongmok_name) 
 VALUES(%s, %d, %s);" % (dday, bb, cc))

错误消息。cursor.execute(INSERT INTO jongmok(Date, Jongmok_num, Jongmok_name) VALUES(%s, %d, %s);" % (dday, bb, cc))

sqlite3.OperationalError:接近“.19”:语法错误

进程以退出代码 1 结束

--> (dday, bb, cc)

只能输入所有数字(字符类型数字也可以)。在 create 或 values 语句中,无论哪种类型,如果输入了字符,则会显示以下错误。

作为参考,“dday”的值为“2019.11.19 12:38”。

sqlite3.version:'2.6.0'

我应该修复什么?

标签: pythonsqlsqlite

解决方案


尝试这个:

"INSERT INTO jongmok(Date, Jongmok_num, Jongmok_name) VALUES('%s', %d, '%s');" % (dday, bb, cc))

为避免插入文本(来自bbcc在您的情况下)生成的语法错误,您应该使用引号。


推荐阅读