mysql-connector 和 PyMySQL。
虽然神兽是同一个,但控制它的法宝有不同流派:
首先,你需要安装这个法宝:pip install pymysql
import pymysql
# 1. 建立灵力连接
# host: 神兽位置, user: 饲养员, password: 咒语, database: 丹炉名
db = pymysql.connect(
host='localhost',
user='root',
password='password',
database='sect_db',
charset='utf8mb4'
)
# 2. 召唤操作游标 (如同炼丹师的手)
cursor = db.cursor()
# 3. 查看版本
cursor.execute("SELECT VERSION()")
data = cursor.fetchone()
print(f"神兽版本: {data}")
# 4. 关闭连接
db.close()
操作逻辑与 SQLite 相似,但记得 MySQL 默认开启事务,修改数据后必须 commit()!
try:
# 插入新丹药
sql = "INSERT INTO pills (name, grade) VALUES (%s, %s)"
cursor.execute(sql, ('九转金丹', 9))
# 必须提交!否则神兽会以为你在演习,不保存!
db.commit()
print("丹药入库成功!")
except Exception as e:
# 炸炉了!回滚!
db.rollback()
print(f"炼丹失败: {e}")
"SELECT * FROM users WHERE name='" + name + "'"%s 占位符!
任务:在使用 PyMySQL 插入数据后,如果忘记调用哪个方法,数据实际上不会被保存?