【发布时间】:2020-02-04 17:47:46
【问题描述】:
插入查询失败并出现错误“重复条目” 但是当我尝试对主键运行 SELECT 查询时,它没有返回任何行。
如果没有行,那这怎么可能是重复条目
描述我的表;
Field Type Null Key Default Extra
folderId binary(16) NO PRI
referenceId binary(16) NO PRI
referenceType String NO
插入查询
Select folderId_2 from FolderRecordContents limit 5;
INSERT INTO MyTable
SET folderid = 'value1',
referenceid = 'value 11',
referenceType = 'value 111';
此操作失败并出现错误“Error Code: 1062. Duplicate entry '\xA7\xC0\xF0\xCF\x06\xDDN0\xB7\x9F\xC8bc\x96\xE3\xF7-TestSchema-' for key 'folderId_2'”
所以我试着看看是否有任何条目 选择查询
Select * from MyTable
Where folderId = 'value1' and
referenceid = 'value 11';
结果:"No rows returned"
我不明白两件事
如果选择没有输出,那么这里是如何发生重复的?
键“folderId_2”出现重复错误,但列名是“folderid”而不是“folderId_2”
更新:
我搜索了表上的索引, 原来,为名为“folderId_2”的表创建了一个索引
现在如何避免索引重复。
【问题讨论】:
-
您是否为此表定义了任何触发器?
-
请运行查询
Select * from MyTable Where folderId = 'value1'排除referenceid = 'value 11' -
是的,也试过了,没有行
-
@peterm:我找到了一个为 'folderId_2' 的表创建的索引,我不明白我现在如何设法克服它,我应该尝试获取索引中的所有键还是什么?
-
@RyanNghiem :更新了描述
标签: mysql duplicates