xcxd.net
当前位置:首页 >> mysql DupliCAtE kEy >>

mysql DupliCAtE kEy

1)没有key的时候,replace与insert .. on deplicate udpate相同.2)有key的时候,都保留主键值,并且auto_increment自动+1不同之处:有key的时候,replace是delete老记录,而录入新的记录,所以原有的所有记录会被清除,这个时候,如果

设主键没

key键值重复了,

确定是表索引数据结构坏掉了,应该修复一下,使用mysql自带的myisamchk工具 执行命令 myisamchk 数据表文件 -r 如果数据库正常 请去掉主键的auto_increment属性 如果用auto_increment就不用给主键赋值,如给主键赋值,就不要用auto_increment

主键值重复,你插入数据的那张表的主键字段的值在(0-119)范围内有重复,即表中已经存在这样的数值,你还要插入同样的数,那肯定是不行的

数据库字段你设置有问题,导致你在执行程序,写入数据库时,如果是重复数据,就跟数据库冲突,导致报错.比如classId,如果不用自增,就指定值,如果它是主键或是unique key是不能重复的.主键值重复,你插入数据的那张表的主键字段的值是1重复,即表中已经存在这样的数值,你还要插入同样的数,那肯定是不行的

代表数据表中 字段xxx中 已经有1的这个数据了,xxx字段应该是主键,不能为重复,你这里插入主键1的值,肯定会报错的,你可以删除先前1的数据,再插入,或者把现在插入的1值修改成其他值,不要有重复.

insert完毕后,commit试试看.

INSERT INTO table1 (count)select count(b.c1) countfrom table2 bwhere date(b.date) =group by b.page_hashON DUPLICATE KEY UPDATE count=count+b.count

搜一下:命令行删除Mysql数据库表中的一个字段,报错Duplicate entry '' for key 'PRIMARY' 命令和报错信息如下

qhgj.net | qyhf.net | rprt.net | hyfm.net | dfkt.net | 网站首页 | 网站地图
All rights reserved Powered by www.xcxd.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com