python向mysql中传入变量
时间: 2024-12-17 08:24:44 浏览: 1
在Python中,使用pymysql库连接MySQL数据库并插入数据时,你可以将变量作为值传递。首先,你需要安装pymysql库,如果尚未安装,可以使用`pip install pymysql`命令。
下面是一个基本示例,展示了如何将变量插入到MySQL表中:
```python
import pymysql
# 连接数据库的信息
db_config = {
'host': 'localhost',
'user': 'your_username',
'password': 'your_password',
'database': 'your_database'
}
# 定义需要插入的数据变量
data_to_insert = {
'name': '张三', # 这里可以根据实际情况替换为变量
'age': 20,
'email': 'zhangsan@example.com'
}
# 连接到数据库
connection = pymysql.connect(**db_config)
try:
# 创建游标
cursor = connection.cursor()
# 构造SQL查询(使用字符串格式化将变量插入)
sql = "INSERT INTO users (name, age, email) VALUES ('%s', %s, '%s')" % (data_to_insert['name'], data_to_insert['age'], data_to_insert['email'])
# 执行SQL
cursor.execute(sql)
# 提交事务
connection.commit()
print("Data inserted successfully.")
except pymysql.Error as e:
# 如果发生错误,回滚事务
connection.rollback()
print(f"Error occurred: {e}")
finally:
# 关闭游标和连接
if cursor:
cursor.close()
if connection:
connection.close()
```
在这个例子中,我们把变量名、年龄和电子邮件作为字典的内容,然后在SQL语句中通过`%s`占位符的形式将它们插入到对应的位置。在实际应用中,你也可以使用f-string或者参数化查询来避免SQL注入的风险。
阅读全文