1

所以我有一个表,其组合键定义如下:

create table BOOK_REVIEW
(
    ISBN    varchar(13)    NOT NULL,
    ID_Num  int            NOT NULL,
    Rating  int            NOT NULL,
    Review  varchar(8000),
    primary key (ISBN, ID_Num),
    foreign key (ISBN) references BOOK(ISBN)
        ON DELETE cascade  ON UPDATE cascade,
    foreign key (ID_Num) references CONTACT(ID_Num)
        ON DELETE cascade  ON UPDATE cascade
);

我遇到的问题是,当我从格式正确的 csv 文件导入数据时,出现重复输入错误。ISBN确实有重复的条目,并且这个表中ID_Num也有重复的条目,但是(ISBN, ID_Num)的复合键对于每一行都是唯一的。为什么我会收到错误消息?

我显然可以省略主键声明,一切都会很好地导入,但我需要正确定义主键。

我尝试在没有主键定义的情况下导入表,然后将所有数据移动到临时表,删除表并使用主键约束重新创建,然后尝试将所有内容移回......但正如预期的那样“重复条目“错误再次弹出。

知道如何通过直接从格式正确的 csv 文件导入来使用复合键填充表吗?

4

0 回答 0