利用python将文本文件导入数据库时,报错:Duplicate entry '...' for key 'PRIMARY'

错误原因就是添加了相同的主键,我想了好一会儿,我抓的数据主键是Isbn啊,不可能重的啊,于是,我去数据库中查了以下报错的isbn号,插入的数据中也有,因为分类不一样,所以要再插入一次,这就肯定会报错啦,其中一个处理方法就是,

如果数据库中有这条记录,那么就跳过这条记录,另外,还可以在跳过这条记录的同时,把数据库中这本书的类别改为这两种类别。

ans = con.execute("select * from b where isbn=(%s)",isbn)if (ans):
  continuecon.execute("insert into b(isbn, bn, bk, bs, author, publisher, publishdate) values (%s,%s,%s,%s, %s, %s, %s)",([isbn, bn, bk, bs, author, publisher, publishdate]))

这样问题就解决了。

利用python将文本文件导入数据库时,报错:Duplicate entry '...' for key 'PRIMARY'

时间: 2024-11-03 22:43:01

利用python将文本文件导入数据库时,报错:Duplicate entry '...' for key 'PRIMARY'的相关文章

遇到的错误:Mysql 报错Duplicate entry '值' for key '字段名'的解决

### Error updating database. Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Duplicate entry 'admin' for key 'user_name_unique' ### The error may involve com.mmall.dao.UserMapper.insert-Inline ### The error occurred

mysql 导入数据库时,报错1840的解决方法

1.现象 在mysql用sql文件导入数据库时,提示ERROR 1840 (HY000) at line 24: @@GLOBAL.GTID_PURGED can only be set when @@GLOBAL.GTID_EXECUTED is empty. 说明:mysql数据库是刚安装的,从未配置过主从复制,也还没有配置过GTID的主从复制. 2.解决方法 查阅的网上资料后,测试后发现下面这个方法可以解决我的问题 进入mysql模式,重置master # mysql -u root -p

导入MySQL测试数据库employee报错

导入MySQL测试数据库employee 报错 下载地址:https://launchpad.net/test-db/ 上传解压: [[email protected] ~]# tar xf employees_db-full-1.0.6.tar.bz2 [[email protected] ~]# cd employees_db 使用mysql命令行工具,导入建库建表语句和数据 employee.sql中是建库建表语句,默认使用的是InnoDB引擎,可以自行修改 [[email protect

PyCharm导入tensorflow包报错的问题

[注]PyCharm导入tensorflow包报错的问题 若是你也遇到这个问题,说明你也没有理解tensorflow到底在哪里. 当安装了anaconda3.6后,在PyCharm中设置interpreter,这个解释器决定了你在PyCharm环境中写的代码采用什么方式去执行. 若是你的设置是anaconda下的python.exe.就会发现在PyCharm中写入import tensorflow as tf 时,就会报错,提示没有tensorflow模块,这是因为anaconda文件下的pyt

数据库open报错ORA-01555: snapshot too old

原文博客链接地址:数据库open报错ORA-01555: snapshot too old 今天正在东莞蜜月的时候,一个学生说他管理的测试库出问题了,无法open,我们先来看看是什么问题: Recovery of Online Redo Log: Thread 1 Group 4 Seq 4 Reading mem 0 Mem# 0: /onlinelog/shr/redo04.log Completed redo application of 0.00MB Completed crash re

数据库日志报错问题分析

Thread 1 cannot allocate new log, sequence 466 Private strand flush not complete Current log# 7 seq# 465 mem# 0: /home/app/oracle/oradata/orcl/redo07.log Thread 1 advanced to log sequence 466 (LGWR switch) Current log# 8 seq# 466 mem# 0: /home/app/or

oc调用c++接口时 报错 Undefined symbols for architecture i386:

当在oc中调用c++中的方法时,发现说c++中的方法没定义或是找不到 Undefined symbols for architecture i386: "_desTYData", referenced from:-[TuYoo encryptParametersWithDict:] in libtuyoo.a(TuYoo.o)ld: symbol(s) not found fo 记得c++中的方法定义是要这样定义的 extern"C" { const char *d

eclipse 导入项目js报错问题

eclipse 导入项目js报错问题 eclipse 导入项目后会出现项目中的js文件报错(红叉),如下图所示,有时候报错的文件很多,需要集中处理. 解决办法:右键项目名称>Properties>JavaScript>Include Path,在右侧选择"Source"选项卡, 然后选择项目中的"Excluded"分支,在右侧点击"Edit",如下图所示: 在弹出的"Inclusion and Exclusion Pa

WPF加载Winform窗体时 报错:子控件不能为顶级窗体

一.wpf项目中引用WindowsFormsIntegration和System.Windows.Forms 二.Form1.Designer.cs 的 partial class Form1 设置为:public partial class Form1 三.代码如下: XXXX.Form1 Zhuwindow = new XXXX.Form1(); Zhuwindow.TopLevel = false; Zhuwindow.FormBorderStyle = System.Windows.Fo