zoukankan      html  css  js  c++  java
  • Oracle基础 11 约束 constraints

    --主、外键约束

    create table t(
      id int primary key);


    create table t1(
      id int references t(id));

    或者
    create table t( 
    id int constraint pk_t_id primary key);


    create table t1(
    id int constraint fk_t1_id references t(id));

      
    修改列为主、外键约束

      create table emp1(
        id number(10),
        name varchar2(20),
        dept number(10)
      );
      create table dept1(
        dept number(10),
        dept_name varchar2(20)
      );

      alter table dept1
      add constraint pk_dept1_dept primary key(dept);

      alter table emp1
      add constraint fk_emp1_dept foreign key(dept) references dept1(dept);

    --创建非空约束列

      create table t(      
        id number(10) constraint nn_t_id not null,
        name varchar2(20),
        company varchar2(20)
      );

      修改列为非空约束

      create table t(
        id number(10),
        name varchar2(20),
        company varchar2(20)
      );
      alter table t 
      modify id constraint nn_t_id not null; 


    --创建唯一约束列

      create table t(                                            
        id number(10) constraint u_t_i unique,
        name varchar2(20),
        company varchar2(20)
      );

      修改列为唯一约束
      alter table t 
      add constraint u_t_id unique(id);


    --创建检查约束

      create table aa3(       
        id number(10) constraint aa3_id_c check(id>=101),
        name varchar2(20),
        company varchar2(20)
      );

      修改列为检查约束
      create table t2(
        id int);
      alter table t2
      add constraint c_t2_id check(id>100);


    --删除约束

      alter table t2 drop constraint c_t2_id;  
     
    注意:对于外键约束的删除时有顺序的,要不然会提示,找到子记录的信息。先删子表的约束,再删父表的约束。  
     
    --查看约束 

    在oracle中,可以通过 user_constraints 视图来查找。
      
    select table_name,constraint_name,constraint_type 
    from user_constraints 
    where table_name='大写的表名'
     
    注意:oracle中约束是一用户名为指定范围存放的。也就是说一个用户名下面约束名子不能有重复,但整个数据库中,可以有相同的约束名。

  • 相关阅读:
    git 提交解决冲突(转载)
    impala系列: 时间函数
    impala系列: 字符串函数
    Impala系列: Impala常用的功能函数
    impala系列:impala特有的操作符
    impala系列: 同步Hive元数据和收集统计信息
    ETL脚本的版本管理方法和 SourceTree 使用
    几本不错的数据仓库和Hadoop书籍
    Kudu系列-基础
    sql parser
  • 原文地址:https://www.cnblogs.com/john2017/p/6364478.html
Copyright © 2011-2022 走看看