Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 创建新的唯一索引时,为键“user_image”复制条目“1-11”时出错_Mysql_Indexing_Unique_Mysql Error 1062 - Fatal编程技术网

Mysql 创建新的唯一索引时,为键“user_image”复制条目“1-11”时出错

Mysql 创建新的唯一索引时,为键“user_image”复制条目“1-11”时出错,mysql,indexing,unique,mysql-error-1062,Mysql,Indexing,Unique,Mysql Error 1062,我的表格结构: CREATE TABLE `userimageview` ( `user_id` int(11) unsigned NOT NULL, `image_id` int(11) unsigned NOT NULL, `thumbnail_view` int(10) unsigned NOT NULL, `fullsize_view` int(10) unsigned NOT NULL, `point` int(10) unsigned NOT NULL, KE

我的表格结构:

CREATE TABLE `userimageview` (
  `user_id` int(11) unsigned NOT NULL,
  `image_id` int(11) unsigned NOT NULL,
  `thumbnail_view` int(10) unsigned NOT NULL,
  `fullsize_view` int(10) unsigned NOT NULL,
  `point` int(10) unsigned NOT NULL,
  KEY `everything` (`user_id`,`image_id`,`thumbnail_view`,`fullsize_view`,`point`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
我将要添加的索引:

ALTER TABLE `userimageview` ADD UNIQUE `user_image` (`user_id` , `image_id`)
结果:

#1062 - Duplicate entry '1-11' for key 'user_image' 
我应该如何添加我的唯一索引?

您新添加的唯一约束失败,因为您的表已包含违反该约束的重复行。使用如下查询查找约束违反者。只要这些行存在,就无法添加唯一索引

SELECT
  user_id, 
  image_id, 
  COUNT(*) AS dupes
FROM userimageview
GROUP BY user_id, image_id
HAVING dupes > 1
ORDER BY dupes DESC

听起来您有一行违反了约束。从userimageview中选择*,其中user_id=1和image_id=11更好的是,查找所有重复项:选择user_id、image_id,按user_id从userimageview组中将*计为重复项,image_id具有重复项>1的重复项,按重复项顺序描述,是。迈克尔,你说得对。我认为应该有一个结构错误!请将您的解决方案作为答案发布,以便我可以接受:我们应该再等5分钟。无论如何,谢谢你。我整晚都在努力