加入收藏 | 设为首页 | 会员中心 | 我要投稿 甘南站长网 (https://www.0941zz.com/)- 科技、行业物联网、开发、云计算、云管理!
当前位置: 首页 > 数据库 > MySql > 正文

Python操作MySQL数据库,插入重复数据

发布时间:2023-12-19 07:33:54 所属栏目:MySql 来源:DaWei
导读: sql = "INSERT INTO test_c(id,name,sex)values(%s,%s,%s)"param = (1,'AJ','MAN')n = cursor.execute(sql,param)db.commit() 当我们使用普通的 &ldqu

 

sql = "INSERT INTO test_c(id,name,sex)values(%s,%s,%s)" param = (1,'AJ','MAN') n = cursor.execute(sql,param) db.commit()

 

当我们使用普通的 “INSERT INTO" 插入数据,如果数据有重复就会有报错:

提示的是键值重复

 

Traceback (most recent call last): File "D:/python/tongbu_py/test.py", line 14, in n = cursor.execute(sql,param) File "D:\Python27\lib\site-packages\MySQLdb\cursors.py", line 174, in execute self.errorhandler(self, exc, value) File "D:\Python27\lib\site-packages\MySQLdb\connections.py", line 36, in defaulterrorhandler raise errorclass, errorvalue _mysql_exceptions.IntegrityError: (1062, "Duplicate entry '1-AJ-MAN' for key 'PRIMARY'")

 

我们可以使用另外2个传入方法: ”INSERT IGNORE INTO 和 REPLACE INTO“:

INSERT IGNORE会忽略数据库中已经存在的数据,如果数据库没有数据,就插入新的数据,如果有数据的话就跳过这条数据。这样就可以保留数据库中已经存在数据,达到在间隙中插入数据的目的

REPLACE INTO 如果存在primary 或 unique相同的记录数据库插入操作,则先删除掉。再插入新记录。

(编辑:甘南站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章