我正在使用一些复制粘贴的代码通过Python / Flask在MySQL数据库上进行SQL查询。我不熟悉它,它告诉我我尝试输入变量的方式不正确。
我的代码运行查询以查看电子邮件是否已存在。
问题代码:
def check_if_exists(val):
import mysql.connector
cnx = mysql.connector.connect(host=0.0.0.0", port=3306, user="username", passwd="password", db="testDB")
cursor = cnx.cursor()
query = """SELECT * FROM users WHERE email = val"""
result = cursor.execute(query)
print(result)
假设val
是一个列,但我希望它使用函数参数。
result = check_if_exists('[email protected]')
>>> True
您可以使用%s
作为绑定值的占位符:
query = """SELECT * FROM users WHERE email = %s"""
result = cursor.execute(query, (val,))
你可以有一个F字符串:
query = F"""SELECT * FROM users WHERE email = {val}"""