我们可以使用主键的约束名称作为外键引用吗?
Can we use constraint name of a primary key as foreign key reference?
例如,我正在创建两个表,如下所示:
create table A (
department_id int,
college_id int,
constraint Pk_name primary key(department_id,college_id)
);
create table B (
student_name varchar(75),
department_id int,
college_id int,
foreign key(department_id,college_id) references A(Pk_name)
);
我可以这样写吗?
我不这么认为,因为 RDBMS 无法知道 PK_name
是列还是约束名称,所以我建议您是否坚持使用通常的名称:
创建 table A (
department_id 整数,
college_id 整数,
约束 Pk_name 主键(department_id,college_id)
);</p>
<p>创建table B (
student_name varchar(75),
department_id 整数,
college_id 整数,
外键 (department_id,college_id) 引用 A(department_id,college_id)
);
一旦找到其他答案,我会更新答案。
例如,我正在创建两个表,如下所示:
create table A (
department_id int,
college_id int,
constraint Pk_name primary key(department_id,college_id)
);
create table B (
student_name varchar(75),
department_id int,
college_id int,
foreign key(department_id,college_id) references A(Pk_name)
);
我可以这样写吗?
我不这么认为,因为 RDBMS 无法知道 PK_name
是列还是约束名称,所以我建议您是否坚持使用通常的名称:
创建 table A (
department_id 整数,
college_id 整数,
约束 Pk_name 主键(department_id,college_id)
);</p>
<p>创建table B (
student_name varchar(75),
department_id 整数,
college_id 整数,
外键 (department_id,college_id) 引用 A(department_id,college_id)
);
一旦找到其他答案,我会更新答案。