• Oracle约束


    Oracle五个重要的约束:非空约束、主键约束、外键约束、检查约束、唯一约束
    约束的作用:定义规则、确保完整性

    truncate只能删除整张表的数据,不能只删除某一行的数据;
    delete既可以删除某一行的数据,也可以删除整张表的数据。
    两者都只是针对数据进行操作,不能删除表的结构。
    drop会删除表的结构。
    --------------------------
    约束:
    1、约束的作用: 定义规则 、 确保完整性(精确性和可靠性)
    2、非空约束:
    在创建表时设置非空约束:
    create table table_name(
    column_name datatype not null,.....);

    create table userinfo_1(
    id number(6,0),
    username varchar2(20) not null,
    userpwd varchar2(20) not null);
    在修改表时添加非空约束:
    ALTER TABLE table_name MODIFY column_name datatype(数据类型) NOT NULL;设置非空约束表中最好是没有任何数据的。
    alter table userinfo modify username varchar2(20) not null;

    在修改表时去除非空约束:
    alter table table_name modify column_name datatype NULL;
    3、主键约束:
    作用:确保表当中的每一行数据的唯一性,要求字段非空、唯一;一张表只能设计一个主键约束,主键约束可以由多个字段构成(联合主键或符合主键)
    在创建表时设置主键约束:1.create table table_name(column_name datatype primary key,..)
    2.constraint constraint_name primary key(column_name1,...)
    创建新表,将id,username作为联合主键
    查找约束名字
    Desc user_constraints查看数据字典的结构
    Select constraint_name from username_constraints where table_name=’USERINFO_P1’;
    Select constraint_name from username_constraints where table_name=’USERINFO_P’

    更改约束的名称
    ALTER TABLE table_name
    Rename constraint old_name to new_name
    删除主键约束
    如果这个约束暂时不想用,今后还想用,可以用禁用约束的方式
    ALTER TABLE table_name
    Disable(禁用) 或者enable(启用) constraint constraint_name
    如果这个约束已经不想用,可以用drop方式
    ALTER TABLE table_name
    Drop constraint constraint_name
    ALTER TABLE table_name
    Drop primary key[cascade]有外键时用[cascade]
    4、外键约束:
    5、唯一约束:
    6、检查约束:

  • 相关阅读:
    Java方向如何准备技术面试答案(汇总版)
    HTTP与HTTPS的区别
    MyBatisPlus环境下使用MyBatis的配置类
    idea 插件的使用 进阶篇(个人收集使用中的)
    Leveldb实现原理
    浅析 Bigtable 和 LevelDB 的实现
    IKAnalyzer进行中文分词和去停用词
    Elasticsearch之中文分词器插件es-ik的自定义词库
    使用Java High Level REST Client操作elasticsearch
    任正非:坚持逐渐辞退低绩效员工
  • 原文地址:https://www.cnblogs.com/jiayouxiage/p/6755775.html
Copyright © 2020-2023  润新知