python mysql 参数化
时间: 2023-10-20 22:32:11 浏览: 49
在 Python 中使用参数化查询是一种防止 SQL 注入攻击并提高查询性能的常用方法。对于 MySQL,可以使用 MySQL Connector/Python 来执行参数化查询。
下面是一个使用参数化查询的示例代码:
```python
import mysql.connector
# 创建数据库连接
cnx = mysql.connector.connect(user='username', password='password',
host='localhost', database='database_name')
# 创建游标对象
cursor = cnx.cursor()
# 定义查询语句和参数
query = "SELECT * FROM table_name WHERE column1 = %s AND column2 = %s"
params = ('value1', 'value2')
# 执行查询
cursor.execute(query, params)
# 获取结果
results = cursor.fetchall()
# 处理结果
for row in results:
# 处理每一行数据
# 关闭游标和连接
cursor.close()
cnx.close()
```
在上面的示例中,%s 是占位符,它将被 params 中的值替换。这种方法可以确保传递给数据库的参数值是安全的,并且不会被当作 SQL 语句的一部分进行解释。
需要注意的是,具体的参数化语法可能会因不同的 MySQL 连接库而有所不同,上述示例是使用 MySQL Connector/Python 的语法。你可以根据自己使用的连接库来进行相应的调整。
希望对你有帮助,如果你还有其他问题,请继续提问。