将 python 变量传递给 mysql select 语句

passing a python variable into a mysql select statement

您好,我有以下代码块,用于获取变量“search_value”并将其传递到 mysql select 语句[=14 的 WHERE 子句中=]

 import MySQLdb

 search_term = input('Enter your search term: ')

 print (search_term)

 conn = MySQLdb.connect(my connection info)

 c = conn.cursor()

 q = "SELECT * FROM courses WHERE course_area = %(value)s "

 params = {'value': search_term}

 c.execute(q, params)

 rows = c.fetchall()

 for eachRow in rows:
     print (eachRow)

我知道我需要在某处使用 %s,但我不确定确切的语法。我在网上进行了一些搜索,但只找到了插入语句的示例……而且我知道它们的语法略有不同。谢谢

这应该有效:

q = "SELECT * FROM courses WHERE course_area = %(value)s "
params = {'value':'some_value_here'}
c.execute(q, params)
.....