我没有得到错误,任何人都可以帮忙??
这是要执行的查询:
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服务器版本对应的手册,以便在#f; -f18-11e6-9a46-0242ac110002附近使用正确的语法) '在第1行")
答案 0 :(得分:1)
您不得使用字符串格式来插入值。具体问题是因为这样做并不引用那些需要字符串的东西;但是你也不必要地将自己暴露给其他问题,比如SQL注入。
使用内置参数支持:
sqlquery = 'insert into ctg_payload2 (ID,hostype,type,group_id,uuid,deviceid) values (%s,%s,%s,%s,%s,%s) ; '
cursor.execute(sqlquery, rowdata)