Python使用pymysql插入数据库行无报错但未成功写入的问题求助
Python使用pymysql插入数据库行无报错但未成功写入的问题求助
各位大佬,求助!我最近在用Python的pymysql库往MySQL数据库里插入数据,代码运行全程没有报错,但数据库里就是看不到新增的记录,折腾好半天都没找到问题所在,把我的代码步骤贴出来,麻烦帮忙排查下!
1. 数据库连接代码
首先是数据库连接部分,我确认连接参数都是正确的(密码实际运行时已填写,这里注释掉了):
import datetime import pymysql conn = pymysql.connect( host='localhost', user='XXXX', #password=, db='golf_db', charset='utf8mb4', cursorclass=pymysql.cursors.DictCursor )
2. 定义要插入的行变量
接下来定义了要插入到表中的各个字段值,为了验证变量是否正确,我最后还打印了这些变量,输出结果都是符合预期的:
lastname="Doe" firstname="John" front9=8 back9=8 birthday=datetime.date(2025,1,31)
打印验证代码:
print(firstname, lastname, front9, back9, birthday)
3. 插入数据的SQL执行代码
这部分是执行插入的核心代码,我用了字典占位符的方式编写SQL,并且也调用了conn.commit(),但就是没有数据写入到Golfers表中:
with conn.cursor() as cursor: sql = "INSERT INTO `Golfers` (`Last_Name`, `First_Name`, `F_Handicap`, `B_Handicap`, `B_Date`) VALUES (%(lastname)s, %(firstname)s, %(front9)s, %(back9)s, %(birthday)s)" conn.commit()
有没有大佬能帮我看看哪里出问题了?实在搞不懂为啥没报错却没数据...
备注:内容来源于stack exchange,提问作者user3147955
相关产品推荐
相关产品推荐

