微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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行。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐