在python中用insert into写入mysql数据库时,可能会出现如题所示异常。
当然,如何改是属于数据方面的知识,网上有很多,不在这里述说。
本文要解决的是:如何在程序中获取该错误,并进行异常处理。
一、捕获异常。
常用方法:
当然在程序调试过程中出现该异常,用肉眼来看就行了。在程序中就需要捕获该异常。参考Python3 MySQL 数据库连接 - PyMySQL 驱动中的代码:
#!/usr/bin/python3
# -*- coding: utf-8 -*-
import pymysql
# 打开数据库连接
db = pymysql.connect("localhost","testuser","test123","TESTDB" )
# 使用cursor()方法获取操作游标
cursor = db.cursor()
# SQL 插入语句
sql = """INSERT INTO EMPLOYEE(FIRST_NAME,
LAST_NAME, AGE, SEX, INCOME)
VALUES ('Mac', 'Mohan', 20, 'M', 2000)"""
try:
# 执行sql语句
cursor.execute(sql)
# 提交到数据库执行
db.commit()
except:
# 如果发生错误则回滚
db.rollback()
# 关闭数据库连接
db.close()