- 0
- 0
- 约1.87千字
- 约 6页
- 2022-06-30 发布于上海
- 举报
上海应用技术学院
上海应用技术学院
《数据库原理及应用》课程实验报告
实验名
称
姓 名
专 业
教师评语
综合设计
院系 计算机科学与信
息工程学院
计算机科学与技术
实验序号班 级 指导教师
实验日期学 号 成 绩
一、实验目的和要求
掌握 SQL 语句的综合应用:数据库表的建立、视图的建立、各种数据查询和更新等。
二、实验预习内容
基本的查询语句:
查询指定列:SELECT SN FROM S WHERE 条件
附:指定条件的方法:(NOT)BETWEEN AND;(NOT) IN;(NOT)LIKE;IS (NOT) NULL;
通配符:%任意字符串;_单个字符; 常用函数:COUNT;AVG;MAX;MIN
查询全部列:SELECT *(*代表所有列)
查询经过计算的值:SELECT 2005-AGE AS 出生年份(别名,只在显示时起作用)
查询汇总:
组查询:SELECT 姓名,COUNT (书号) FROM 借阅,读者
WHERE 借阅.读者编号=读者.读者编号GROUP BY 姓名
筛选条件:HA VING COUNT (书号)=2 (添加筛选条件) 查询排序:ORDER BY 依据 ASC/DESC
SQL 更新:
插入数据:INSERT INTO 表名 (不一致时要指定列) VALUES ( ‘,‘’,‘’,’)修改数据:UPDATE 表名 SET 列名 WHERE 条件
删除数据:DELCET FROM 表名 WHERE 条件
定义视图:
CREATE VIEW 视图名(需要时指定列名) AS SELECT 语句
三、实验项目摘要1.假设“图书借阅数据库”中的部分关系模式为:(带下划线的属性为主码)
图书(书号,类别,出版社,作者,书名,定价) 读者(读者编号,姓名,单位,性别,电话)
借阅(书号,读者编号,借阅日期)
建立以上三个表,设置主键、外键和必要的约束;输入一些数据备用; 2.完成以下查询更新等操作
查找这样的图书:书名中有“数学”二字,由高教出版社出版;
查询所有借了书的读者信息;
求机械出版社出版的各类图书的平均定价;
查询每位读者借阅的图书册数;
查询借阅日期在 2012-2013 年之间的借阅记录,包括读者信息和图书信息;
建立视图:类别是“小说”的图书的所有借阅纪录;
查询从未借过“纪实”类别图书的读者信息;
读者王小毛的单位信息发生了变化,他的新的单位是“上海应用技术学院”,请进行相应修改;
请将下面的这本新书的信息输入到数据表中:编号1531009、书名“福尔摩斯新探案”,类别“小说”,定价 25 元,其它信息暂不输入。
删除读者编号为“8888”的所有信息。
四、实验结果与分析1.
读者:
图书:
借阅:
2.
(1)
SELECT *
FROM 图书
WHERE 书名LIKE % 数学%
AND 出版社= 高教出版社
(2)
SELECT 姓名
FROM 读者
WHERE 读者编号IN ( SELECT 读者编号
FROM 借阅)
(3)
SELECT AVG ( 定价) AS 平均价格FROM 图书
WHERE 出版社= 机械出版社
(4)
SELECT 姓名,COUNT (书号)AS 总借阅量FROM 借阅,读者
WHERE 借阅.读者编号=读者.读者编号GROUP BY 姓名
(5) SELECT *
FROM 读者,图书,借阅
WHERE 借阅日期BETWEEN 2012AND 2013
AND 借阅.读者编号=读者.读者编号AND 借阅.书号=图书.书号
(6)
CREATE VIEW ONE AS SELECT *
FROM 借阅
WHERE 书号IN (SELECT 书号
FROM 图书
WHERE 类别=小说)
(7)
SELECT *
FROM 读者
WHERE 读者编号IN ( SELECT 读者编号
FROM 借阅
WHERE 书号NOT IN ( SELECT 书号
FROM 图书
WHERE 类别= 纪实 ))
(8)
UPDATE 读者
SET 单位= 上海应用技术学院 WHERE 姓名= 王小毛
(9)
INSERT INTO 图书(书号,书名,类别,定价) VALUES (1531009,福尔摩斯新探案,小说,25)
(10) DELETE
FROM 读者
WHERE 读者编号=8888
注:空间不够,可以增加页码。
原创力文档

文档评论(0)