zoukankan      html  css  js  c++  java
  • Oracle 五种约束的创建和移除:

    1.主键约束:
        创建表的时候就添加:
        create table table_name 
        (categoryId varchar2(10),
        categoryName varchar2(30),
        primary key(categoryId));
        创建表后追加:
        alter table table_name
        add constraints constraint_name primary key(column_name);
        移除主键约束:
        alter table table_name 
        drop constraint constraint_name;
    2.外键约束:保证外键约束的数据库列与所引用的主键约束的数据列一致。
        创建表的时候就在建表语句后面添加:
        constraint constraint_name foreign key (colune_name)   
        reference table_name (column_name)
        on delete cascade;
        创建表后追加外键约束:
        add constraint constraint_name foreign key (column_name)
        reference table_name (column_name)
        on delete cascade;
        移除外键约束:
        alter table table_name 
        drop constraint constraint_name;
    3.check约束:规定每一列能够输入的值,以保证数据的正确性。
        创建表的时候在建表语句后面添加检查约束:
        constraint  constraint_name CHECK(检查约束的条件);
        例:
        create table user
        (cumstonId varchar2(10),
        Name varchar2(30),
        age number(2),
        gender varchar2(2),
        constraint check_age check(age>=18 and age<=50));
        修改表的时候添加check约束:
        alter table table_name 
        add constraint constraint_name check(检查条件);
        例:
        alter table user 
        add constraint constraint_name check(gender='男' or gender='女');
        移除检查约束:
        alter table table_name 
        drop constraint constraint_name;
    4.UNIQUE约束:设置在表中输入的字段值都是唯一的。
        在创建表的时候在建表语句后面添加唯一约束:
        constraint constraint_name unique(column_name);
        例:
        create table orderinfo(
        orderId varchar2(10),
        custonId varchar2(10),
        constraint unique_orderid unique(orderId));
        在修改表的时候添加UNIQUE约束:
        alter table table_name 
        add constraint constraint_name unique(column_name);
        移除unique约束:
        alter table table_name 
        drop constraint constraint_name;
    5.NOT NULL 约束:非空约束,确保字段必须有输入值。
        在创建表的时候在需要的字段后面直接加一个 not null :
        create table table_name 
        (managerId varchar2(10),
        LoginName varchar2(10) not null,
        Password varchar2(10) not null,
        Name varchar2(10));
        在修改表的时候设置NOT NULL 约束:
        alter table table_name 
        modify column_name not null;
        移除非空约束(一般不需要删除):
        alter table table_name 
        modify column_name null;
    
  • 相关阅读:
    Google's Machine Learning Crash Course #01# Introducing ML & Framing & Fundamental terminology
    MySQL Crash Course #09# Chapter 17. Combining Queries: UNION
    MySQL笔记(二)数据库对象的创建和管理
    浅谈TCP/IP网络编程中socket的行为
    linux网络编程中的shutdown()与close()函数
    c++11中的线程、锁和条件变量
    多线程TcpServer
    TCP网络库:Acceptor、TcpServer、TcpConnection
    epoll 的accept , read, write
    线程安全函数
  • 原文地址:https://www.cnblogs.com/chenjo/p/14189677.html
Copyright © 2011-2022 走看看