Python SQL 查询 - 未知列

标签 python mysql sql

信息:插入一个统计数据,即温度值。信息应该是“temp”,这样我就知道日志是关于温度的

我正在尝试从 python 脚本执行下一个查询

info = "temp"
sql = 'insert into stat_bus (addr, grp, info, status) 
VALUES (' + address + ', ' + group + ', ' + info + ', ' + status + ')'

我收到以下错误:字段列表中的未知列温度 地址、组和状态不会出错。

我尝试了其他可能性的字符串解析(我猜这就是错误?),但无法使其工作。提前致谢

最佳答案

问题是,对于您的查询,SQL 不会将 temp 解释为字符串“temp”,而是解释为变量名为temp

如果打印sql,您将得到以下查询:

insert into stat_bus (addr, grp, info, status) VALUES (something, something, temp, something)

而您想要此查询:

insert into stat_bus (addr, grp, info, status) VALUES ("something", "something", "temp", "something")

(请注意 temp 周围的引号)

只需在正确的位置添加引号即可更改您的 Python 代码:

info = "temp"
sql = 'insert into stat_bus (addr, grp, info, status) 
VALUES ("' + address + '", "' + group + '", "' + info + '", "' + status + '")'

关于Python SQL 查询 - 未知列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45583826/

相关文章:

python - 使用 nosetests --pdb 选项设置断点

python - 在 Windows 中为 Python 安装 thrift_sasl

python - 使用带有线程的锁的实用小型 Python 示例

sql - 数据库表中多列的 Presto MD5 哈希

javascript - 在 python 网络抓取期间触发 js 事件

mysql - 光标查找字数

mysql - 重复的 Inter_Columns

mysql - 合并2个MySQL数据库

php - sql查询没有返回正确的结果

SQL:有关 LEFT OUTER JOIN 的帮助