MySQL:无法添加或更新子行

MySQL:无法添加或更新子行,mysql,sql,mysql-error-1452,Mysql,Sql,Mysql Error 1452,我是MySQl的新手,当我遇到这个错误时,我想用一个键连接两个表。我浏览了一些相关的问题,但似乎找不到问题所在 首先,我创建了这个表,它可以工作: CREATE TABLE uniquepeps (ID INT NOT NULL, Sequence CHAR(30) NOT NULL, PRIMARY KEY (Sequence)); LOAD DATA LOCAL INFILE "D://...//Uniquepeps.txt" INTO TABLE uniquepeps; 该表如下所示,

我是MySQl的新手,当我遇到这个错误时,我想用一个键连接两个表。我浏览了一些相关的问题,但似乎找不到问题所在

首先,我创建了这个表,它可以工作:

CREATE TABLE uniquepeps (ID INT NOT NULL, Sequence CHAR(30) 
NOT NULL, PRIMARY KEY (Sequence));
LOAD DATA LOCAL INFILE "D://...//Uniquepeps.txt" INTO TABLE uniquepeps;
该表如下所示,可以正常工作:

1   AAAATTTTTGGGGGG
2   GGGGGUUUUUKKK
3   OOOOPPPPMMMNN
然后我创建了另一个表:

CREATE TABLE peps (ID INT NOT NULL, Sequencepeps CHAR(30) 
NOT NULL, PROTID INT NOT NULL, PRIMARY KEY (ID), CONSTRAINT 
Seq_fk FOREIGN KEY (Sequencepeps) references uniquepeps(Sequence));
但当我试图加载数据时,它不起作用,我得到了一个错误

LOAD DATA LOCAL INFILE "D://...//Pepsandprots.txt" INTO TABLE peps; 
Error Code: 1452. Cannot add or update a child row: a foreign key constraint fails (`biology`.`peps`, CONSTRAINT `Seq_fk` FOREIGN KEY (`Sequencepeps`) REFERENCES `uniquepeps` (`Sequence`) )   
第二个表的数据为:

1       AAAATTTTTGGGGGG 1
2       AAAATTTTTGGGGGG 2
3       AAAATTTTTGGGGGG 3
4       AAAATTTTTGGGGGG 4
5       GGGGGUUUUUKKK   1
6       GGGGGUUUUUKKK   8
7       OOOOPPPPMMMNN   9
8       OOOOPPPPMMMNN   25

感谢您的帮助

该错误意味着,您试图在表
peps
Sequencepeps
中插入一个值,该值在列
Sequence
的表
uniquepeps
中不存在


仔细看,您可以看到您的输入文件可能有问题,您在
uniquepeps
中编写了
gggg uuuuuu kk
,但是在
peps
-文件中有两个不同的类似文件:
ggggggg uuuuuuu kk
(正确)和
gggggguguuuuuuuukk
(缺少
G
)-也许是你这边的错别字?

是的,是问题中的错别字。我现在编辑了,但在我要加载的文件中,顺序是正确的,错误仍然存在,我明白了-您确定所有
pep
都存在于
uniquepeps
中吗?你问题中的内容描述是整个文件,还是仅仅是开始?是的,它是整个文件。我以前试过一些东西(在两个不同的文件上),我的钥匙上只有ID,而且有效。我想看看我是否也能用序列作为键。我只知道真正的基础知识,但这可能是一些技术性的东西吗?我读了一些关于发动机的书,但不知道它是如何工作的,也不知道它是什么。谢谢你已经调查过了!我不知道为什么,但如果我在pepsandprots中添加一列Unique_peps_ID,并将其用作uniquepeps中主键ID的外键,我没有错误,我可以毫无问题地加载数据。我想我可以解决这个问题,但我不明白为什么以前的方法不起作用。