Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用字符串作为查询的python mysql问题_Python_Mysql_Mysql Error 1064 - Fatal编程技术网

使用字符串作为查询的python mysql问题

使用字符串作为查询的python mysql问题,python,mysql,mysql-error-1064,Python,Mysql,Mysql Error 1064,因此,在我的程序中,我有一个字符串,其中包含要用于将行插入数据库的查询: query = '"INSERT INTO new_test (test_name, IP, test_run_date, results_query_time, run_time) VALUES (%s, %s, %s, %s, %s)", ("new_test", "192.168.17.194", "143917160811", "12.4847829342", "46.1268320084")' 但是,当我执行命

因此,在我的程序中,我有一个字符串,其中包含要用于将行插入数据库的查询:

query = '"INSERT INTO new_test (test_name, IP, test_run_date, results_query_time, run_time) VALUES (%s, %s, %s, %s, %s)", ("new_test", "192.168.17.194", "143917160811", "12.4847829342", "46.1268320084")'
但是,当我执行命令时:

cursor.execute(query)
我得到这个错误

编程错误:(1064,'您的SQL语法有错误;请查看与您的MySQL服务器版本对应的手册,以了解在“插入到新测试中”附近使用的正确语法(测试名称、IP、测试运行日期、结果查询时间、运行时间\'在第1行')

我尝试了一些其他的引用组合,但我一辈子都搞不清楚我做错了什么。 有什么想法吗?谢谢!

您在查询的开头有一个额外的
。这肯定会破坏它。看起来您想要:

#请注意%s周围的多余部分
query=“”插入到新的\u测试中
(测试名称、IP、测试运行日期、结果查询时间、运行时间)
值('%s','%s','%s','%s','%s','%s')“”%\
(“新_测试”、“192.168.17.194”、“143917160811”,
"12.4847829342", "46.1268320084")
您在查询的开头有一个额外的
。这肯定会破坏它。看起来您想要:

#请注意%s周围的多余部分
query=“”插入到新的\u测试中
(测试名称、IP、测试运行日期、结果查询时间、运行时间)
值('%s','%s','%s','%s','%s','%s')“”%\
(“新_测试”、“192.168.17.194”、“143917160811”,
"12.4847829342", "46.1268320084")

谢谢,这让我抓狂谢谢,这让我抓狂不要使用字符串操纵生成查询。如果任何数据来自用户,您将面临SQL注入攻击。Python DB API支持参数化查询;请使用它们。不要使用字符串操纵生成查询。您正在打开如果任何数据来自用户,则自启动SQL注入攻击。Python DB API支持参数化查询;请使用它们。