
1、创建主键测试表test_key_p,
create table test_key_p(id number, class_id number);
2、创建两一个主键测试表test_key_f,class_id字段作为test_key_p表的外键,
create table test_key_f(class_id number, class_name varchar2(20));
3、编写sql,添加主键、外键,
-- Create/Recreate primary, unique and foreign key constraints
alter table TEST_KEY_P add constraint p_key1 primary key (ID);
alter table TEST_KEY_P add constraint f_key2 foreign key (CLASS_ID) references test_key_f (CLASS_ID);
4、查看主键、外键信息,ID为primary即主码,CLASS_ID为foreign即外码,
数据库中的外码约束指用于在两个表之间建立关系,需要指定引用主表的哪一列。对于存在外码约束的表,如果进行删除非空的外码,可能会出现错误。如果在外码约束的列中输入非 NULL 值,则此值必须在被引用的列中存在,否则将返回违反外码约束的错误信息。
扩展资料:
外码约束仅能引用位于同一服务器上的同一数据库中的表。数据库间的引用完整性必须通过触发器实现。一个表最多可包含 253 个外码约束。对于临时表不强制 外码约束。
有外码约束可以引用同一表中的其它列(自引用)。列级外码约束的 REFERENCES 子句仅能列出一个引用列,且该列必须与定义约束的列具有相同的数据类型。
表级外码约束的 REFERENCES 子句中引用列的数目必须与约束列列表中的列数相同。每个引用列的数据类型也必须与列表中相应列的数据类型相同。
和定义不冲突呀。“学号”(定义中的ks)是学生关系的主码;“课程号”(定义中的ks)是课程关系的主码。“学号”(定义中的F)不是选修关系的主码,是选修关系中的外码;“课程号”(定义中的F)也不是选修关系的主码,是选修关系中的外码。选修关系的主码是(学号,课程号)。学生关系和课程关系为被参照关系,选修为参照关系。
外键也称为外码或外部关键字。如果一个属性集不是所在关系的关键字,但是是其他关系的关键字,则该属性集称为外部关键字。
在关系数据库中可以通过外键使两个关系关联,这种联系通常是一对多的,其中主关系称为被参照关系,从关系称为参照关系。
以上就是关于数据库中主码和外码怎么判断呀全部的内容,包括:数据库中主码和外码怎么判断呀、数据库中的外码约束指什么 急等答案!!!、一到数据库外码的概念题求助等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)