数据库----数据更新

本文详述了一次数据库操作实验,涵盖了数据更新的各个方面,包括查询、修改、删除记录以及索引的建立与删除。实验中通过实际操作展示了如何处理违反表完整性的错误,以及如何在视图上进行增删查改操作,强调了数据库完整性约束和视图在实际应用中的重要性。

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

实验目的

熟悉并掌握创建表,插入记录,查询记录,删除记录,修改记录。
创建索引,删除索引。
创建视图,使用视图,删除视图。

实验内容

仍然基于上次课程建立的小型图书借阅系统。如果使用实验室的机器完成实验,首先重做上次课的步骤1-4建立相应数据库。

实验步骤

(以用户CC的身份建立连接,并在此连接下执行后面的操作。)
1、 查询记录:在Reader表中查询直接上司是“李四”的员工的名字

SELECT rname from reader where rboss=’李四’;

在这里插入图片描述
2、 修改记录:在Reader表中把直接上司是“李四”的员工的办公地点统一改为“420”

update reader SET raddress='420' where rboss='李四';

在这里插入图片描述
3、 删除记录:在Reader表中把直接上司未赋值(NULL)是记录删去

此处得先删除RB表中没有直接上司的员工的借书记录,才能删除Reader表中该员工记录!

delete from rb where rno in  (select rno from reader where rboss is null);
delete from reader where Rboss is null;

在这里插入图片描述
4、 删去数据表:把整个Reader表删去

drop table reader cascade constraints;

在这里插入图片描述
5、 重新执行第一、二步,即建立数据表、插入数据。

DROP TABLE RB;
DROP TABLE BOOK;

create table Reader
(
    RNO	varchar2(4) primary key,
    Rname	varchar2(10) not null,
    Rsex	varchar2(3),
    Rage	integer,
    Rboss	varchar2(10),
    Raddress	varchar2(30)
) ;

insert into Reader (RNO,Rname,Rage,Rsex,Rboss, Raddress) values('R001','张三',20,'男','李四','416');
insert into Reader (RNO,Rname,Rage,Rsex,Rboss, Raddress) values('R002','张三',35,'女',null,'417');
insert into Reader (RNO,Rname,Rage,Rsex,Rboss, Raddress) values('R003','李四',30,'男',null,'416');
insert into Reader (RNO,Rname,Rage,Rsex,Rboss, Raddress) values('R004','王五',20,'男',null,'417');
insert into Reader (RNO,Rname,Rage,Rsex,Rboss, Raddress) values('R005','马六',40,'男',null,'416');
insert into Reader (RNO,Rname,Rage,Rsex,Rboss, Raddress) values('R006','刘三',20,'男',null,'417');
insert into Reader (RNO,Rname,Rage,Rsex,Rboss, Raddress) values('R007','王四',40,'男','李四','416');
insert into Reader (RNO,Rname,Rage,Rsex,Rboss, Raddress) values('R008','李小龙',20,'男','李四','417');
insert into Reader (RNO,Rname,Rage,Rsex,Rboss, Raddress) values('R009','王小倩',40,'男','李四','416');
insert into Reader (RNO,Rname,Rage,Rsex,Rboss, Raddress) values('R010','王一小',20,'男','李四','417');

create table Book
(
    BNO	varchar2(4),
    Bname	varchar2(50) not null,
    Bauthor	varchar2(50),
    Bpress	varchar2(50),
    Bprice	numeric(6,2), 
    primary key(BNO)
);
insert into book (BNO,Bauthor,Bname, bpress, bprice) values('B001','严蔚敏','数据结构','清华大学出版社',null);
insert into book 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值