python - 正确语法的 MySQL 服务器版本

标签 python mysql

我没有收到错误,有人可以帮忙吗?

这是要执行的查询:

sqlquery = 'insert into ctg_payload2 (ID,hostype,type,group_id,uuid,deviceid) values ({},{},{},{},{},{}) ; '.format(*rowdata)
cursor.execute(sqlquery)

数据列表:

rowdata = [u'android', u'TSC', u'airtime-ctg', u'guest', u'guest', u'8354e5f4-e18d-11e6-9a46-0242ac110002', u'77c7600c502a3d15']

错误:

(1064,“您的 SQL 语法有错误;请检查与您的 MySQL 服务器版本相对应的手册,了解在第 1 行‘f4-e18d-11e6-9a46-0242ac110002)’附近使用的正确语法”)

最佳答案

不得使用字符串格式来插入值。具体问题是因为这样做并没有引用那些需要是字符串的东西;但您也不必要地让自己面临其他问题,例如 SQL 注入(inject)。

使用内置参数支持:

sqlquery = 'insert into ctg_payload2 (ID,hostype,type,group_id,uuid,deviceid) values (%s,%s,%s,%s,%s,%s) ; '
cursor.execute(sqlquery, rowdata)

关于python - 正确语法的 MySQL 服务器版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43042913/

相关文章:

python - 通过将子列表的元素与Python中所有其他子列表中的元素进行比较来删除子列表

mysql - Openshift 应用程序显示空白页

javascript - 多张幻灯片的 ORDER BY

Python特定类型的深度嵌套字典

php - MySQL SUM 同一行中的多列

mysql - 合并具有单独日期范围的表而不重叠数据 - Access

mysql - 将纬度和经度存储在单独的表中是否可以提高性能

python - Zlib 无法解压 python 2.7

python - Google Appengine 发送电子邮件 : [Error] unauthorized sender

python - python print() 函数实际上做了什么?