Oracle外键约束之在创建表时设置外键约束

前端之家收集整理的这篇文章主要介绍了Oracle外键约束之在创建表时设置外键约束前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
一 语法
列级进行设置
CREATE TABLE table1
(colume_name datetype REFERENCES
table2(column_name),...)
table1:从表
table2:主表
外键约束也被称为主次表的关系。
注意:
设置外键约束时,主表的字段必须是主键。
主从表中相应的字段必须是同一种数据类型。
从表中外键字段的值必须来自主表中的相应字段的值,或者为null值,其他值不允许。
二 实例
本实例演示了: 从表中外键字段的值必须来自主表中的相应字段的值,或者为null值,其他值不允许。
  1. sql> create table typeinfo
  2. 2(typeid varchar2(10) primary key,
  3. 3typename varchar2(20));
  4. 表已创建。
  5. sql> create table userinfo_f
  6. 2(id varchar2(10) primary key,
  7. 3 username varchar2(20),
  8. 4 typeid_new varchar2(10) references typeinfo(typeid));
  9. 表已创建。
  10. sql> insert into typeinfo values(1,1);
  11. 已创建1行。
  12. sql> insert into userinfo_f(id,typeid_new) values(1,2);
  13. insert into userinfo_f(id,2)
  14. *
  15. 1行出现错误:
  16. ORA-02291:违反完整约束条件(SYSTEM.SYS_C0011061)-未找到父项关键字
  17. 1);
  18. 已创建1行。
  19. typeid_new) values(2,null);
  20. 已创建1行。
原文链接:https://www.f2er.com/oracle/208182.html

猜你在找的Oracle相关文章