从flask中的mysql提取信息时出现问题

从flask中的mysql提取信息时出现问题,mysql,python-3.x,flask,Mysql,Python 3.x,Flask,我正在编写一个简单的程序,试图从数据库中提取一些信息。我正在使用的数据库中的表称为names。如果我这样做: self.cursor.execute("""select * from names WHERE first_name = 'Sarah' """) for row in self.cursor.fetchall(): print(row[0]) 我得到了我想要的。但如果我将该名称更改为变量,例如: name = input('Enter First name: ') self

我正在编写一个简单的程序,试图从数据库中提取一些信息。我正在使用的数据库中的表称为names。如果我这样做:

self.cursor.execute("""select * from names WHERE first_name = 'Sarah' """)
for row in self.cursor.fetchall():
    print(row[0])
我得到了我想要的。但如果我将该名称更改为变量,例如:

name = input('Enter First name: ')
self.cursor.execute("""select * from names WHERE first_name=%s""", (name))
我得到以下错误:mysql.connector.errors.ProgrammingError:1064(42000):您的SQL语法有错误;请查看与MySQL服务器版本对应的手册,以获取第1行“%s”附近要使用的正确语法


我知道这个网站上还有其他帖子接近我的问题,我从他们那里尝试的似乎不起作用。我还尝试了一些教程,但仍然出现了这个错误。因此,任何帮助都将不胜感激!非常感谢。我正在使用mysql.connector、Python 3.4和Flask。

好的,我自己找到了答案。我必须这样做:self.cursor.execute(query,(name,)),答案是深入挖掘,我发现了这个网站: