如何在mysql连接查询中包含变量?

问题描述

my_connect = MysqL.connector.connect(
      host="localhost",user="xyz",passwd="xyz",database="tracking"
    )
    my_conn = my_connect.cursor()

    x = input("enter name")
    query="SELECT * FROM trackingtable WHERE Customer_Name = \"x\"";
    print(query)
    my_conn.execute(query)

    my_conn.close()

Query printed statement

如何使用用户输入获得正确的查询?我尝试使用占位符,但无法使它们工作

解决方法

尝试:

query = f"SELECT * FROM trackingtable WHERE Customer_Name = {x}"

这是一个f-string,您可以在其中通过{}插入变量。

如果您需要在查询中使用"

query = f'SELECT * FROM trackingtable WHERE Customer_Name = "{x}"'

您最后需要;吗?