pymysql 中变量怎么使用
时间: 2023-10-24 15:13:11 浏览: 164
在使用 PyMySQL 进行 SQL 查询时,可以使用变量来代替 SQL 语句中的具体值。这样可以保护代码免受 SQL 注入攻击,并且提高代码的可读性和可维护性。
下面是一个使用 PyMySQL 命令行客户端执行 SQL 查询的例子:
```python
import pymysql
# 连接数据库
conn = pymysql.connect(
host="localhost",
user="root",
password="password",
db="database"
)
# 创建 Cursor 对象
cursor = conn.cursor()
# 定义变量
id = 1
name = "John"
# 执行 SQL 查询
sql = "SELECT * FROM users WHERE id=%s AND name=%s"
cursor.execute(sql, (id, name))
# 获取查询结果
result = cursor.fetchall()
print(result)
# 关闭数据库连接
conn.close()
```
在上面的例子中,我们首先连接到数据库,然后创建了一个 cursor 对象。接着我们定义了两个变量 id 和 name,分别代表查询语句中的占位符 %s 的值。我们将这些变量传递给 cursor.execute() 方法作为第二个参数,PyMySQL 将自动替换 SQL 语句中的占位符。
最后,我们使用 cursor.fetchall() 方法获取查询结果,并打印结果列表。
注意,当我们使用变量来代替 SQL 语句中的值时,需要使用占位符 %s。如果查询语句中有多个占位符,需要将它们放在一个元组中,然后将该元组作为第二个参数传递给 cursor.execute() 方法。
阅读全文