oracle表级约束

博客主要介绍了表级约束相关内容,在创建好表结构后添加约束,给出了三种创建表的写法。第一种和第二种为常规写法,第三种是推荐写法,基本约束采用列级形式,外键采用表级形式,还提及遇到资源正忙的解决办法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

– 表级约束

– 创建好表的结构之后,再去添加约束。
– 第一种写法
create table tb_stu4 (
id int,
name varchar(20),
sex char(4),
age int,
address varchar(100) default ‘广州天河’,
phone varchar(30),
clazz_id int,

   -- 当创建好表的结构之后,跟着就可以添加约束了
   primary key(id),
   check(name is not null),
   check(sex = '男' or sex = '女'),
   check(age > 0 and age < 65),
   unique(phone),

   -- 外键
   foreign key (clazz_id) references tb_clazz(id)   

);

– 如果还碰到资源正忙,可以点击提交按钮,然后再继续执行即可。
– 要不,就是直接断掉连接,重新连接即可

– 第二种写法
create table tb_stu5 (
id int,
name varchar(20),
sex char(4),
age int,
address varchar(100) default ‘广州天河’,
phone varchar(30),
clazz_id int,

   -- 约束     约束名     约束类型(列名)
   constraint stu_pk primary key(id),
   constraint stu_name check(name is not null),
   constraint stu_sex check(sex = '男' or sex = '女'),
   constraint stu_age check(age > 0 and age < 65),
   constraint stu_phone unique(phone),

   -- 外键
   constraint stu_fk foreign key (clazz_id) references tb_clazz(id)   

);

– 第三种:推荐写法,基本约束采用列级形式,外键采用表级形式
create table tb_stu6 (
id int primary key,
name varchar(20) not null,
sex char(4) check(sex = ‘男’ or sex = ‘女’),
age int check(age > 0 and age < 65),
address varchar(100) default ‘广州天河’,
phone varchar(30) unique,
clazz_id int,

   -- 外键
   foreign key (clazz_id) references tb_clazz(id)   

);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值