添加联合key,防止重复插入

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了添加联合key,防止重复插入相关的知识,希望对你有一定的参考价值。

RT:

自然是百度了一行代码:

ALTER TABLE `salary_persondetails`
ADD UNIQUE INDEX `person_wage_unique` (`pxh`, `wageid`) ;

然后拔错了:

[SQL] ALTER TABLE `salary_persondetails`
ADD UNIQUE INDEX `person_wagse_unique` ( `pxh`, `wageid`) ;
[Err] 1503 - A UNIQUE INDEX must include all columns in the tables partitioning function

额,好吧,该表有一个分库件:fgsid

KEY `auto_shard_key_fgsid` (`fgsid`) USING BTREE

结局方案:

ALTER TABLE `salary_persondetails`
ADD UNIQUE INDEX `person_wage_unique` (`fgsid`, `pxh`, `wageid`) ;

到此应该就完了,其实这只是一个因子,

深入解析MySQL分区(Partition)功能

这篇文章是需要我吃透的,这里直接借鉴了,等我咀嚼完了,下面贴自己的个人体会

 

以上是关于添加联合key,防止重复插入的主要内容,如果未能解决你的问题,请参考以下文章

使用文本框 (asp.net) 防止同时、插入或导入重复记录

数据库表中不建索引,在插入数据时,通过sql语句防止重复添加

mysql防止重复插入记录方法总结

当我回到片段时防止重复项目

mysql 复合 唯一 索引

如何联合2个字典[重复]