我对 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
任何帮助表示赞赏!