约束总结
非空约束--只能在列级设置,不能在表级设置
主键约束--每张表只能有一个,有的可以由多个字段构成;
外键约束--2张表之间关系的
唯一约束
检查约束
更改约束名称:
数据字典 user_constraints
rename constraint old_name to new_name;
删除约束:
alter table table_name
modify column_name datatype NULL;
disable|enable constraint constraint_name;
drop constraint constraint_name;
drop primary_key;
CONSTRAINT
总结
五大约束
非空约束,主键约束,外键约束,唯一约束,检查约束
更改约束名字
RENAME CONSTRAINT 原约束名称 TO 新约束名称
放在 ALTER TABLE 后面
要删除非空约束,
设置为null就可以了
总结:
非空约束:
主键约束:每张表只能有一个,可以由多个字段构成;
外键约束:涉及两个表之间的关系;
唯一约束:
检查约束:
小结
1、非空约束:只能在列级设置,不能在表级设置
2、主键约束:每张表只能有一个,可以由多个字段构成
3、外键约束:涉及两个表之间的关系
4、唯一约束
5、检查约束
在创建表时设置约束
在修改表时添加约束:ALTER TABLE table_name MODIFY column_name datatype NOT NULL;
更改约束的名称
·数据字典(user_constraints)
·ALTER TABLE table_name RENAME CONSTRAINT old_name to new_name
删除约束
·ALTER TABLE table_name MODIFY column_name datatype NULL;
·禁用:DISABLE|ENABLE CONSTRAINT constraint_name;
·删除:DROP CONSTRAINT constraint_name;
·删除主键约束:DROP PRIMARY KEY
非空约束没有名字
删表的主键约束不需要名字
修改时添加非空约束。
约束总结
1、非空约束
2、主键约束:每张表只能有一个,但是可以由多个字段组成。
3、外键约束:涉及两张表的约束。
4、唯一约束
5、检查约束
6、默认约束
创建表时设置约束:只有非空约束只能在列级设置,并且非空约束是没有名字的。
修改表时添加约束:非空约束特殊,它使用如图方式。
更改约束的名称:如图。
删除约束:删除非空约束也是比较特殊的,如图。
删除表中主键约束
约束总结
1、非空约束
2、主键约束:每张表只能有一个,但是可以由多个字段组成。
3、外键约束:涉及两张表的约束。
4、唯一约束
5、检查约束
6、默认约束
创建表时设置约束:只有非空约束只能在列级设置,并且非空约束是没有名字的。
修改表时添加约束:非空约束特殊,它使用如图方式。
更改约束的名称:如图。
删除约束:删除非空约束也是比较特殊的,如图。
删除表中主键约束
非空约束只能在列级设置而不能在表级设置,且非空约束没有名字,而其他约束既可以在列级设置也可以在表级设置,且要有名字。
在修过表时添加非空约束相当于修改字段:(ALTER TABLE table_name
MODIFY conlumn_name datatype NOT NULL;)
更改约束名字:
数据字典(user_constraints)
RENAME CONSTRAINT old_name TO new_name
删除约束:
删除非空约束仍然用到的是修改字段的语句:(ALTER TABLE table_name
MODIFY column_name datdtype NULL;)
删除其他约束有两种方法:
禁用或者删除
DISABLE | ENABLE CONSTRAINT constraint_name
DROP CONSTRAINT constraint_name
由于主键是唯一的,可以使用DROP PRIMARY KEY直接删除
更改约束名称:
ALTER TABLE table_name RENAME CONSTRAINT old_name TO new_name;
1、五个中就主键约束是要求唯一的,而且可以由多个字段组成,也就是表级约束可以多个字段写在一起; 2、五个中只有外键约束是涉及两个表的; 3、五个中只有非空约束是没有表级约束,只有列级约束的; 4、在修改表的时候修改约束,也是非空约束不同,使用的是修改字段的语句: alter table userinfo modify username varchar2(20) null; 其他的使用都是 alter table 表名 add constraint 约束名 check/primary key/unique(字段,检查的是字段条件); //外键:add constraint 外键名字 foreign key (从字段名)references 主表名(主表字段); 5、非空约束没有名字,其他都是可以改名字的 alter table 表名称 rename constraint 用来的约束名 to 新的约束名; 查询的时候使用数据字典:user_constraints select constraint_name,constraint_type,status from user_constraints 2 where table_name='USERINFO_C3'; 6、删除约束,非空约束也是使用修改字段的语句,其他的都是使用下面: 1.禁用约束 > ALTER TABLE table_name DISABLE|ENABLE CONSTRAINT constraint_name; 2.直接删除约束 > ALTER TABLE table_name DROP CONSTRAINT constraint_name; 另外主键约束因为是唯一的,有一种特殊的删除方法: drop primary key;
非空约束(NOT NULL):只能在列级,不可进行表级操作。没有名字。
主键约束(PRIMARY KEY):只能有一个,但是可以由多个字段组成(联合主键)。
外键约束(REFERENCES):主表字段必为主键;主从表相应字段数据类型必相同;从表的外键字段的值必须与主表相应字段一致或为空。
唯一约束(UNIQUE):允许有空值且可有多个。
检查约束(CHECK):检查字段数据的安全可靠,在允许范围之内。
查询约束名用到的数据字典:uer_constrains
数据字典: user_constrains