Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/339.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 where子句中的错误_Python_Html_Mysql_Apache_Localhost - Fatal编程技术网

python mysql where子句中的错误

python mysql where子句中的错误,python,html,mysql,apache,localhost,Python,Html,Mysql,Apache,Localhost,我是python的新手。我编写了一个小代码来连接数据库并从数据库中获取数据。我使用Python3.4和mysql.connector来连接数据库 HTML表单用于获取名称和密码。代码如下所示 <html> <head> <title>test</title> <link rel="stylesheet" type="text/css" href="wel.css"> </head> <body>

我是python的新手。我编写了一个小代码来连接数据库并从数据库中获取数据。我使用Python3.4和mysql.connector来连接数据库

HTML表单用于获取名称和密码。代码如下所示

<html>  
<head>  
<title>test</title>  
<link rel="stylesheet" type="text/css" href="wel.css">
</head>  
<body>  
<form action="/cgi-bin/python1.py" method="post">
<label>First Name: <input type="text" name="first_name"></label><br />

<label>Password:<input type=password name="pass" /></label><br />

<input type="submit" value="Submit" />
</form> 
</body>  
</html> 
但是where子句的赋值错误。我没有得到什么语法错误。请给出建议 错误为:

ProgrammingError: 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '%s' at line 1 
      args = (1064, "1064 (42000): You have an error in your SQL synt...n for the right syntax to use near '%s' at line 1", '42000') 
      errno = 1064 
      msg = "You have an error in your SQL syntax; check the ...n for the right syntax to use near '%s' at line 1" 
      sqlstate = '42000' 
      with_traceback = <built-in method with_traceback of ProgrammingError object>
ProgrammingError:1064(42000):您的SQL语法有错误;请查看与MySQL服务器版本对应的手册,以获取第1行“%s”附近要使用的正确语法
args=(1064,“1064(42000):您的SQL语法中有一个错误…n在第1行的“%s”附近使用正确的语法,'42000')
errno=1064
msg=“您的SQL语法有错误;请检查第1行“%s”附近的…n以了解要使用的正确语法”
sqlstate='42000'
带_回溯=

您错过了单引号,正如@Matthias所说,第二个参数是元组

cursor.execute("""SELECT pass FROM tablename1 where name='%s'""", (first_name, ))

您错过了单引号,正如@Matthias所说,第二个参数是元组

cursor.execute("""SELECT pass FROM tablename1 where name='%s'""", (first_name, ))

您错过了单引号,正如@Matthias所说,第二个参数是元组

cursor.execute("""SELECT pass FROM tablename1 where name='%s'""", (first_name, ))

您错过了单引号,正如@Matthias所说,第二个参数是元组

cursor.execute("""SELECT pass FROM tablename1 where name='%s'""", (first_name, ))

使用该解决方案(删除参数化语句),您创建了一个新的可能性。@Matthias您是对的。我编辑了我的答案。谢谢。@liushuaikobe for where子句中的2个参数。请检查写入游标的方式是否正确。执行(““从tablename1中选择名称,其中名称='%s',传递='%s'””)”(名字,密码))@user092签出。示例代码显示了如何使用
光标。使用您创建的解决方案(删除参数化语句)执行
。@matthia您是对的。我编辑了我的答案。谢谢。@liushuaikobe for where子句中的2个参数。请检查写入游标的方式是否正确。执行(““从tablename1中选择名称,其中名称='%s',传递='%s'””)”(名字,密码))@user092签出。示例代码显示了如何使用
光标。使用您创建的解决方案(删除参数化语句)执行
。@matthia您是对的。我编辑了我的答案。谢谢。@liushuaikobe for where子句中的2个参数。请检查写入游标的方式是否正确。执行(““从tablename1中选择名称,其中名称='%s',传递='%s'””)”(名字,密码))@user092签出。示例代码显示了如何使用
光标。使用您创建的解决方案(删除参数化语句)执行
。@matthia您是对的。我编辑了我的答案。谢谢。@liushuaikobe for where子句中的2个参数。请检查写入游标的方式是否正确。执行(““从tablename1中选择名称,其中名称='%s',传递='%s'””)”(名字,密码))@user092签出。示例代码显示了如何使用
光标。execute
您需要一个元组作为
execute
的第二个参数:
光标。execute(“'SELECT pass FROM tablename1 WHERE name=%s”“”,(first_name,)
您需要一个元组作为
execute
光标的第二个参数。
execute('“从tablename1中选择pass,其中name=%s”“,(first_name,)
您需要一个元组作为
execute
游标的第二个参数。execute(““从tablename1中选择pass,其中name=%s”“,(first_name,)”
您需要一个元组作为
execute
游标的第二个参数。execute(”“从tablename1中选择pass,其中name=%s”“,(名字),)