+ -
当前位置:首页 → 问答吧 → 避免重复插入数据,又要保持高效率

避免重复插入数据,又要保持高效率

时间:2011-09-29

来源:互联网

表中有10万多数据,每次要批量倒入几百条,不想在程序里逐一的判断是否重复,mysql有无高效的解决办法?
link 和 userid 这两个字段组合要保持唯一。

作者: ideasky   发布时间: 2011-09-29

创建基于 (link,userid) 的唯一索引

create unique index xxx on table1(link,userid)

作者: ACMAIN_CHM   发布时间: 2011-09-29

提示 Specified key was too long; max key length is 767 bytes

作者: ideasky   发布时间: 2011-09-29

link VARCHAR(300)
userid INT(11)

作者: ideasky   发布时间: 2011-09-29

把link VARCHAR(300) 改为VARCHAR(200)可以了,另外问下,插入数据时如果碰到重复数据还是会引发错误而终止了程序的执行,有办法避免吗?

作者: ideasky   发布时间: 2011-09-29

INSERT IGNORE .. 

如果不明白,看一下MYSQL手册中的 insert 语法中 IGNORE 的例子

作者: ACMAIN_CHM   发布时间: 2011-09-29

insert ignore into tbname(a,b) values(1,2)

作者: rucypli   发布时间: 2011-09-29

相关阅读 更多