zoukankan      html  css  js  c++  java
  • 数据库学习

      oracle查询表的约束条件

    select * from user_constraints t where t.CONSTRAINT_NAME='约束名'
    或
    select * from user_constraints t where t.table_name = '表名'
    oracle 启用或者禁用约束条件

    alter table 表名 disable constraint 约束名 CASCADE 一定要有 CASCADE
    更新或者删除完之后再启用
    alter table 表名 enable constraint 约束名

    添加NOT NULL约束

    alter table tb_name

    modity column_name constraint nt_name not null;

    需要注意的是,添加NOT NULL约束并不使得add constraint语句,而是使用modify。

    添加FOREIGN KEY约束

    alter table tb_name1

    add constraint fk_name

    foreign key (column_name1) references tb_name2(column_name2);

    在添加外键时,若在最后添加关键字on delete cascade,则在父表中删除一行记录时,子表中匹配的所有行也都将被删除。若添加关键字on delete set null则在父表删除一行记录时,子表中外键将被设置为空值。若添加关键字on delete no action则在父表删除一行记录时,子表中外键不做任何处理。

    添加PRIMARY KEY约束

    alter table tb_name

    add constraint uk_name primary key (column_name);

    添加CHECK约束

    alter table tb_name

    add constraint ck_name check (column_condition);

    一般情况下,在添加一个约束时,表中现有的所有行都必须满足这个约束条件。然而,如果在最初添加约束时可以禁用约束并可以通过指定ENABLE NOVALIDATE选项来让约束只适用于新添加的数据。

    添加UNIQUE约束

    alter table tb_name

    add constraint uq_name unique(column_name);

    删除约束

    alter table tb_name

    drop constraint 约束名;

    在删除主键约束时,若存在主外键关系,则必须加cascade关键字。

    alter table tb_name

    drop constraint primary key cascade;

    删除约束时,默认将同时删除约束所对应的索引,如果要保留索引,用KEEP INDEX关键字。

    alter table tb_name

    drop primary key keep index;

  • 相关阅读:
    【Tools】xshell添加命令按钮Button
    【Optimization】ARM的寻址方式(详细)
    【Python】python文件或文本加密(4种方法)
    【Optimization】常用SSE Intrinsic指令总结
    【Optimization】X86汇编快速入门
    【Base】如何理解Latency和Throughput: 吞吐量和延迟
    【Cmd】Windows下批处理常用命令总结
    【Optimization】SSE指令集学习:Compiler Intrinsic
    【ASM】汇编指令movdqa与movdqu的区别
    anaconda
  • 原文地址:https://www.cnblogs.com/zlqblog/p/6927512.html
Copyright © 2011-2022 走看看