Oracle 约束条件

1)Not Null 约束 (防止NULL值进入指定的列)

  • 不能包含Null值或者无值
  • 只能在单个列上定义
  • 同一个表中可以在多个列上分别定义NOT NULL约束

2)UNIQUE 约束 (唯一约束,保证指定的各列组合中没有重复的值)

  • 不能包含重复的值,可以包含多个NULL值或者无值
  • 可以定义在单个列上或者多个列的组合
  • Oracle会自动为UNIQUE约束的列建立一个唯一索引。如果已经有唯一或非唯一所以,将使用已有的索引。

3)Primary Key 约束(主键约束,唯一标示表的每一列,并防止出现NULL值。一个表只有一个主键约束)

  • 不能有重复值,并且不能包含NULL值(类似于unique + NOT NULL 约束)
  • 同一个表中只能够定义一个Primary Key约束的列(或列组合)

4)Foreign Key 约束(外键约束,保证参考完整性。在参考表中定义的外键需要参照主表的主键)

  • 定义为FK约束的列中只能包含相应的在其他表中引用的列的值或者为NULL
  • 定义FK约束的外键列和相应的引用列可以存在于同一个表中(自引用)
  • 定义为FK的列,也可以同时定义为NOT NULL约束
  • FK即可定义在列级别,也可以定义在表级别

猜你喜欢

转载自luhantu.iteye.com/blog/2218126