在使用cursor.execute()方法执行数据库语句时,可以使用参数化查询来避免SQL注入攻击,并且不需要手动添加引号。在使用参数化查询时,可以使用 %s 占位符来替换变量。

以下是一个示例:

import pymysql

# 创建数据库连接
conn = pymysql.connect(host='localhost', user='root', password='password', database='mydb')
cursor = conn.cursor()

# 准备要插入的数据
name = "John"
age = 25

# 使用参数化查询
sql = "INSERT INTO mytable (name, age) VALUES (%s, %s)"
cursor.execute(sql, (name, age))

# 提交事务
conn.commit()

# 关闭连接
cursor.close()
conn.close()

在上述示例中,我们使用了 %s 占位符来替换变量 nameage。这样就可以确保变量值会被正确地插入到SQL语句中,而不需要手动添加引号。

请注意,在使用参数化查询时,不需要手动对变量进行格式化或添加引号。cursor.execute()方法会自动处理变量的格式化和引号的添加

python3执行数据库语句使用pymysql cursorexecute的语句中使用格式化应该使用哪种格式化替换后的字符串变量不带有引号

原文地址: https://www.cveoy.top/t/topic/iKX1 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录