评论

收藏

[Oracle] Oracle数据库的字段约束创建和维护示例

数据库 数据库 发布于:2021-10-16 16:25 | 阅读数:233 | 评论:0

创建Oracle数据库的字段约束:
      
  • 非空约束  
  • 唯一约束  
  • 对字段的取值的约束  
  • 默认值  
  • 外键约束
create table tab_class( 
 class_id number primary key, 
 class_name varchar2(10) not null unique 
);
create table tab_stu( 
stu_id number, 
 --学生姓名,不能为空,不能重复 
stu_name varchar2(20) not null unique, 
 --学生姓名只能是male或female 
stu_gender varchar2(6) not null check(stu_gender='male' or stu_gender='female'), 
 --学生年龄只能在18到60之间 
stu_age number check(stu_age >18 and stu_age <60), 
 --邮箱可以不填写,填写的话不能相同 
stu_email varchar2(30) unique, 
stu_address varchar2(30), 
--外键约束 
class_id number not null references tab_class(class_id)  
);
维护已经创建好的约束:
      
  • 可添加或删除约束,但不能直接修改。  
  • 可使约束启用和禁用。  
  • 非空约束必须使用MODIFY子句增加。  
  • 为表增加主键约束:
--维护约束 
--创建约束 
create table tab_check( 
 che_id number, 
 che_name varchar2(20) 
); 
--为表增加主键约束 
alter table tab_check 
add constraints tab_check primary key(che_id);
添加唯一约束
--添加唯一约束,tab_check_unique表示约束的名称 
alter table tab_check 
add constraints tab_check_unique unique(che_name);
添加检查约束:
--添加一个字段 
alter table tab_check 
add che_age number; 
--添加检查约束 
alter table tab_check 
add constraints tab_check_age check(che_age>18 and che_age<60);
删除约束:
--删除主键约束 
alter table tab_check 
drop constraints tab_check;
禁用约束:
--禁用约束 
alter table tab_check disable constraints tab_check;
启用约束
--启用约束 
alter table tab_check enable constraints tab_check;
复合约束,联合主键,也就是两个字段的组合成一个主键
--联合主键 
create table tab_person( 
 tab_firstname varchar2(10), 
 tab_lastname varchar2(10), 
 tab_gender varchar2(5), 
 primary key(tab_firstname,tab_lastname) 
);
为表添加外键约束:
alter table tab_stu 
add constraints tab_stu foreign key(class_id) references tab_class(class_id);
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持CodeAE代码之家

关注下面的标签,发现更多相似文章