oracle 创建外键

oracle 创建外键,第1张

oracle创建外键约束有两种方法:

1、创建表时直接创建外键约束

create table books(

    bookid number(10) not null primary key,

    bookName varchar2(20) not null,

    price number(10,2),

    categoryId number(10) not null references Category(id)  --外键约束

)

2、先创建表,表创建成功后,单独添加外键约束

create table books(

    bookid number(10) not null primary key,

    bookName varchar2(20) not null,

    price number(10,2),

    categoryId number(10) not null

)

ALTER TABLE  books ADD CONSTRAINT FK_Book_categoryid FOREIGN KEY(categoryId ) REFERENCES Category(id)

创建数据库时就是有主键的创建了主键,但是表之间的关系没有联系,要建数据库关系图只有主键没有外键时不行的。

建外键的前提是此外键必须是另外一个表的主键。建外键的步骤:

第一步、打开要建外键表的设计器,右击选择“关系”。

第二步、然后d出“外键关系”窗体,我们选择“添加”,然后点击“表和列规范”后面的小按钮。

第三步、d出另外一个窗体让我们选择主键表和列,记住要选择相同的,选好之后点击确定。

第四步、展开INSERT和UPDATE规范,在更新规则和删除规则有四个选项,分别是“不执行任何 *** 作”、“级联”、“设置为NULL”、“设置默认值”。

默认的不执行任何 *** 作。如果是“不执行任何 *** 作”,当我们删除或更新主键表的数据时,会告诉用户不能执行删除或更新该 *** 作。

“级联”的意思是当我们删除或更新主键表的数据时,会删除或更新外键表中所涉及的相关数据的所有行。

“设置Null”的意思是当我们删除或更新主键表的数据时,外键表中的外键列的值会设为Null,但前提是该列允许为空。

“设置默认值”的意思是如果我们将外键列定义了默认值,当我们删除或更新主键表的数据时,外键表中的外键列的值设为定义的默认值。

当然也可以用代码创建,在创建数据库表T——Card时只要加上一句代码就可以了。“Foreign key (studentNo) references T_Student(studentNo)"。如果已经创建了改表,那如何用代码实现了,这也很简单也就一句代码“ add constraint CMPKey(外键名) foreign key(studentNo) references T_Student(studentNo)”。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/7913705.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-11
下一篇2023-04-11

发表评论

登录后才能评论

评论列表(0条)

    保存