信息:插入一个统计数据,即温度值。信息应该是“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/