ex06数据更新操作参考答案

时间:2025-07-14

实验六 数据更新操作

1 实验目的与要求

(1) 掌握基本表的INSERT、UPDATE、DELETE操作。

(2) 正确理解更新操作中涉及到的相关约束问题。

2 实验内容

根据BookDB中4张关系表,完成以下更新操作:

(1) 分别给这4张表添加信息,要求图书分类表、图书表、读者表各插入5个元组,借阅表插入20个元组。

(2) 将联合股份有限公司的读者工作单位修改为联合立华股份有限公司。

(3) 将入库数量最多的图书单价下调5%。

(4) 将“经济类”的图书单价提高10%。

(5) 将借阅次数高于2次的图书数量增加50%。

(6) 将富士康科技集团读者的借书期限延长至3个月。

(7) 根据借阅表修改每个读者的借书数量。

(8) 删除价格超过50元的图书借阅信息。

(9) 删除借阅了大学英语的借阅记录。

(10) 删除从未借过书的读者。

参考答案

根据BookDb中四张关系表,完成以下更新操作:

(1) 分别给这四张表添加信息,要求图书分类表、图书表、读者表各插入5个元组,借阅表插入20个元组。插入信息见实验四

(2 将联合股份有限公司的读者工作单位修改为联合立华股份有限公司。

update reader

set workunit='联合立华股份有限公司'

from reader

where workunit='联合股份有限公司'

(3) 将入库数量最多的图书单价下调5%。

update book

set price=price*0.95

from book

where shopnum=(select max(shopnum) from book)

(4) 将“经济管理类”的图书单价提高10%。

update book

set price=price*1.1

from book a,bookclass b

where a.classno=b.classno and b.classname='经济类'

(5) 将借阅次数高于次的图书数量增加50%。

update book

set shopnum=shopnum*1.5

from book

where bookno in(select distinct bookno

from borrow

group by bookno

having count(*)>2)

(6)将富士康科技集团读者的借书期限延长至3个月。

update borrow

set shoulddate=borrowdate+90

from borrow

where readerno=(select readerno

from reader

where workunit like '富士康%')

(7) 根据借阅表修改每个读者的借书数量。

update reader

set borrowcount=borrownum

from reader a,(select readerno,count(*) borrownum

from borrow

group by readerno) b

where a.readerno=b.readerno

(8) 删除价格超过50元的图书借阅信息。

delete from borrow

where bookno in (select bookno

from book

where price>50 )

(9) 删除借阅了大学英语的借阅记录。

delete from borrow

where bookno in (select a.bookno

from borrow a,book b

where a.bookno=b.bookno and bookname like '大学英语%')

(10) 删除从未借过书的读者。

delete from reader

where readerno in(select a.readerno

from reader a left outer join borrow b

on a.readerno=b.readerno

where bookno is null)

ex06数据更新操作参考答案.doc 将本文的Word文档下载到电脑

    精彩图片

    热门精选

    大家正在看

    × 游客快捷下载通道(下载后可以自由复制和排版)

    限时特价:7 元/份 原价:20元

    支付方式:

    开通VIP包月会员 特价:29元/月

    注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
    微信:fanwen365 QQ:370150219