sqlite3.OperationalError:靠近“%”:语法错误

Posted

技术标签:

【中文标题】sqlite3.OperationalError:靠近“%”:语法错误【英文标题】:sqlite3.OperationalError: near "%": syntax error 【发布时间】:2019-02-07 08:50:07 【问题描述】:

我创建了下表:

sql_command = """CREATE TABLE users (
id VARCHAR(255) PRIMARY KEY,
name VARCHAR(255),
company VARCHAR(255));"""

当我运行以下命令时:

sql = """INSERT INTO users(id, name, company) VALUES (%s, %s, %s)"""
crsr.execute(sql, ("value", "value", "value"))

我收到错误消息:

File "test.py", line 50, in analyzeUsers
    crsr.execute(sql, ("value", "value", "value"))
sqlite3.OperationalError: near "%": syntax error

有什么想法吗?

【问题讨论】:

sqlite3 使用 qmarks 作为参数占位符:? 而不是 %s 【参考方案1】:

正如 Parfait 所说,我在使用 SQLite 时应该使用 ? 而不是 %s

【讨论】:

以上是关于sqlite3.OperationalError:靠近“%”:语法错误的主要内容,如果未能解决你的问题,请参考以下文章

sqlite3.OperationalError ...我的sqlite语法有啥问题?

sqlite3.OperationalError:靠近“%”:语法错误

django:sqlite3.OperationalError:没有这样的表

sqlite3.OperationalError:表测试没有名为 python 的列错误

从给定范围中选择行时,sqlite3.OperationalError“SQL 变量太多”

sqlite3 operationalerror异常