Oracle中五种约束,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;

Oracle 五种约束的创建和移除:

标签:use   数据   oracl   需要   设置   code   key   reference   rac

本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉 本文系统来源:https://www.cnblogs.com/chenjo/p/14189677.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值