gpt4 book ai didi

mysql - 错误 1062 : duplicate entry in non-primary field

转载 作者:行者123 更新时间:2023-11-29 21:51:16 25 4
gpt4 key购买 nike

我最近开始使用MySQL来完成我的学习工作,现在面临以下问题:

我的前任创建了一个具有以下结构的文本挖掘表:

+------------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+------------+--------------+------+-----+---------+-------+
| TokenId | int(11) | NO | PRI | 0 | |
| Value | varchar(255) | YES | | NULL | |
| Frequency | int(11) | YES | | NULL | |
| PMID | int(11) | YES | MUL | NULL | |
+------------+--------------+------+-----+---------+-------+

在重组的背景下,我添加了以下列:

+------------+--------------+------+-----+---------+-------+
| NewTokenId | int(11) | YES | | NULL | |
+------------+--------------+------+-----+---------+-------+

如果我现在运行查询:

insert into TitleToken(NewTokenId) select t.TokenId from Token as t, TitleToken as tt where t.Value = tt.Value

甚至查询:

insert into TitleToken(NewTokenId) values(1);

我得到以下输出:

ERROR 1062 (23000): Duplicate entry '0' for key 'PRIMARY'

正如我所说,我对(实际操作)*SQL 比较陌生,感觉像是一个愚蠢的错误,但由于 NewTokenId 列不是主键,不是唯一的,甚至 Null 也是 YES,我想我会基本上能够插入我想要的任何内容。

任何提示将不胜感激...提前致谢:)

最佳答案

这里的问题是你的主键“TokenID”有一个默认值,如果你没有在插入语句中插入该键的值,系统将自动插入0。但是,如果有另一个元组如果该属性具有相同的值(这很可能是因为默认值为 0),您将收到该错误。

关于mysql - 错误 1062 : duplicate entry in non-primary field,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33612097/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com