如何在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}"'

您最后需要;吗?

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...