我遇到了一些SQL外键的问题。
这是我的表并插入SQL。
create table passenger_card2
(
phone char(20) primary key,
name char(20)
);
create table card
(
card_num char(20) primary key,
balance number(10,2),
cvn char(20)
);
create table passenger_card1
(
sin integer primary key,
user_id char(20) not null unique,
phone char(20),
card_num char(20) unique,
foreign key(phone) references passenger_card2,
foreign key (card_num) references card
);下面是我的INSERT语句:
INSERT INTO PASSENGER_CARD2 VALUES ( '111222333' , 'Ace');
INSERT INTO CARD VALUES ( '1000' , '100.1' , '110');
INSERT INTO PASSENGER_CARD1 VALUES ('100', 'aaaa', '111222333', '1000');但是,当我尝试插入PASSENGER_CARD1数据时会出现一个错误:
SQL ORA-02291:完整性约束被违反-父键未找到
我不知道为什么我的外键错了?
发布于 2020-04-07 14:37:33
我不确定这是否正确,但是在创建第一个表之前,您应该先做表2。数据库很混乱,因为告诉他们第二个表中有一个外键是没有意义的,但是表没有创建。首先运行第二个表的代码,然后运行第一个表的代码。
https://stackoverflow.com/questions/61082401
复制相似问题