美文网首页
Oracle课堂笔记FOUR

Oracle课堂笔记FOUR

作者: 喵个酱 | 来源:发表于2019-03-07 15:36 被阅读0次

    约束:保证数据库有某些特定的商业逻辑,维护数据的完整性:约束、触发器、应用程序(过程、函数)

    Oracle中,约束分为5种

    1、非空约束:如果给某个字段定义了not null,name在插入数据的时候,就必须为给字段提供数据。

    --创建表的时候添加非空约束

    create table user_table(

    username varchar2(20) not null,

    password varchar2(20)

    );

    --修改表的时候添加非空约束

    alter table table_name modify 字段名 字段类型 not null;

    --删除非空约束

    alter table table_name modify 字段名 字段类型 null;

    主键约束(primary key):主键是定位表中单个行的方式,可以唯一标识表中的数据,关系型数据库每一张表都应该有主键,主键可以是一个字段也可以是多个字段

    1、主键列必须非空且唯一

    2、每张表只能有一个主键,不过这个主键可以由多个字段共同组成(联合主键)

    --在创建表的时候添加主键约束

    --列级约束

    create table student_table(

    student_id number(10) primary key,

    student_name varchar2(20)

    );

    表级约束

    create table student_table(

    student_id number(10),

    student_name varchar2(20),

    constraint pk_student_id primarykey(student_id) 

    );

    user_constraints 

    sql developer

    --修改表的时候添加主键约束

    alter table table_name add constraint 约束的名字 primary key(.....);

    --删除主键约束

    alter table tablename drop constraint 约束的名字 alter table tablename drop primary key;

    alter table tablename disable|enable constraint 约束的名字;

    外键(foreign key):

    用于联系主表和从表之间的关系,外键定义在从表上的,

    要求外键数据必须在主表的主键列中存在或者为null;

    --在创建表的时候设置外键约束

    列级约束:

    create tablebriup_dept(  --主表

    deptno number(2) primary key,

    dname varchar2(20),

    loc varchar2(20)

    );

    create tablebriup_emp(    --从表

    ename varchar2(20) constraint 约束的名字 not null,

    deptno number(2) references briup_dept(deptno)

    );

    表级约束:

    create tablebriup_emp(    --从表

    ename varchar2(20) not null,

    deptno number(2),

    constraint fk_emp_deptno_dept_deptno foreign key references briup_dept(deptno) [on delete cascade];

    );

    --删除外键约束

    alter table tablename drop constraint 约束的名字 alter table tablename disable|enable constraint 约束的名字;

    4、唯一约束

    unique

    --创建表的时候添加唯一约束

    create table test(

    username varchar2(20) unique

    );

    create table test(

    username varchar2(20),

    constraint 约束的名字 unique(字段);

    );

    --在修改的时候

    alter table table_name add constraint 约束的名字 unique(.....);

    --删除唯一约束

    alter table tablename drop constraint 约束的名字 alter table tablename disable|enable constraint 约束的名字;

    5、检查约束

    --在创建的时候添加检查约束

    create table emp(

    sex varchar2(20) default '男' check(sex in ('男' ,'女')), 

    sal number(5) check(sal>0)

    );

    --修改

    alter table table_name add constraint 约束的名字 check(条件);

    --删除

    alter table tablename drop constraint 约束的名字 alter table tablename disable|enable constraint 约束的名字;

    相关文章

      网友评论

          本文标题:Oracle课堂笔记FOUR

          本文链接:https://www.haomeiwen.com/subject/legcpqtx.html