Oracle 实验六:管理表

本文介绍了如何使用Oracle SQL创建学生信息表STUDENT和班级信息表CLASS,并详细讲解了表的存储参数修改、字段添加、主键及外键约束的设置方法。

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

You are more than what you have become.Remember who you are.

1.创建基本表

(1)创建学生信息表STUDENT和班级信息表CLASS

create table student(
     sid number(10),
     sname varchar2(8),
     sex char(2),
     classid number(3))
     tablespace users;
create table student(
     cid number(3),
     cname varchar2(20),
     tel varchar2(20)
)
     tablespace users;

STUDENT表:

CLASS表:

(2)修改STUDENT表的存储参数

alter table student move tablespace example;

(3)为CLASS表添加一个新字段

alter table class add(addr varchar2(20));

2.为表定义约束

(1)为STUDENT和CALSS表分别添加主键约束

alter table STUDENT
add constraint pk_sid primary key(SID);
alter table CLASS
add constraint pk_cid primary key(CID);

(2)尝试向SYUDENT表添加两条具有相同主键的记录

先修改存储类型:

alter table student modify sname varchar2(20)
alter table student modify sex char(5)

首先插入一条SID=1000的数据:

再次尝试插入相同SID的数据,警告如下:

修改SID,插入成功:

(3)为STUDENT和CLASS表添加外键约束

alter table student
add constraint stu_class foreign key(CLASSID)
references class(CID);

原因:刚开始由于STUDENT表中已经存在数据,所以已经违反了外键约束,故不能成功创建外键约束。删除STUDENT表中的两条数据,再次创建外键约束,成功:

(4)向STUDENT表添加另外一个班级的学生记录,以验证外键约束的有效性

insert into student(sid,sname,sex,classid)
values(1002,'喻言','女',011);

(5)禁用STUDENT表的外键约束

alter table student
disable constraint stu_class;

现在可以向STUDENT表中添加(4)中的数据了:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值