请问各位老大
在oracle中,是不是一定要有主键或者唯一约束的列才能被其他表的外键列所引用例如:create table works
(
w_id int primary key,
w_name varchar2(20),
w_sal int
);
create table person
(
p_id int primary key,
p_name varchar2(20),
w_sal int,
CONSTRAINT person_ibfk_1 FOREIGN KEY (w_sal) REFERENCES works (w_sal)
);我指定person表中的w_sal列为外键,在在建表时提示works表中的w_sal列的唯一或主键不匹配难道主表中只有主键约束或者唯一约束的列才能被子表的外键引用吗?
在oracle中,是不是一定要有主键或者唯一约束的列才能被其他表的外键列所引用例如:create table works
(
w_id int primary key,
w_name varchar2(20),
w_sal int
);
create table person
(
p_id int primary key,
p_name varchar2(20),
w_sal int,
CONSTRAINT person_ibfk_1 FOREIGN KEY (w_sal) REFERENCES works (w_sal)
);我指定person表中的w_sal列为外键,在在建表时提示works表中的w_sal列的唯一或主键不匹配难道主表中只有主键约束或者唯一约束的列才能被子表的外键引用吗?
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货