oracle数据库约束、索引,enable和disable用处

1.数据库索引

索引:索引是对数据库表中一列或多列的值进行排序的一种结构

索引分类:主键索引(PRIMAY KEY)、唯一索引(UNIQUE)、常规索引(INDEX)、全文索引(FULLTEXT)

 常规索引  CREATE INDEX 索引名 ON 表名  (字段名)

 唯一索引  CREATE UNIQUE INDEX 索引名 ON 表名  (字段名)

2.数据库约束

约束:数据库约束时防止非法记录的规则

约束分类:

主键约束(Primay Key Coustraint):唯一性,非空性,一个表只能有主键,创建主键时会自动创建主键索引

ALTER TABLE 表名 ADD CONSTRAINT 主键名 PRIMARY KEY (字段名)

唯一约束(Unique Counstraint):唯一性,可以空,但只能有一个空,一张表可以有多个唯一约束,创建唯一约束时会自动创建唯一索引

ALTER TABLE 表名 ADD CONSTRAINT 约束名 UNIQUE (字段)

检查约束(Check Counstraint):对该列数据的范围、格式的限制(如:年龄、性别等)

ALTER TABLE 表名 CHECK (字段 约束)

默认约束(Default Counstraint):该数据的默认值

ALTER TABLE 表名 ALTER 字段名 SET DEFAULT '默认值'

外键约束(Foreign Key Counstraint):需要建立两表间的关系并引用主表的列

ALTER TABLE 表名1 ADD CONSTRAINT 外键名 FOREING KEY (表1字段) REFENCES 表名2(表2字段)

3.disable与enable约束

控制约束的约束,控制表的约束时禁止还是激活状态

disable:禁止状态,相当于该列没有约束,使用disable默认为Novalidate

enable:激活状态,默认新创建的约束状态是激活状态,使用enable默认为Validate

 

 

Validate

Novalidate

已有记录

新增/删除记录

已有记录

新增/删除记录

Enable

Yes(表示需要受到约束条件限制)

Yes

No

Yes

Disable

Yes

No

No

No

posted @ 2020-01-13 14:24  转转龙  阅读(5237)  评论(0编辑  收藏  举报