数据库SQL部分练习题集

2020-08-23 20:32

1.SQL是_______________

2.SQL语言的功能包括_________、__________、_________、________。

3.视图是一个虚表,它是从______中导出的表,在数据库中,只存放视图的____,不存放视图的________。

4.设有如下关系表R:R(No,Name, Sex, Age, Class),主关键字是No,其中No为学号,Name为姓名,Sex为性别,age为年龄,Class为班号,写出实现下列功能的SQL语句。

① 插入一个记录(25,‘李明’,‘男’,21,‘95031’);

____________________________________________________________ ②插入‘95031’班学号为30,姓名为‘郑和’的学生记录;

____________________________________________________________ ③将学号为10的学生姓名改为‘王华’;

____________________________________________________________ ④将所有‘95101’班号改为‘95091’;

____________________________________________________________ ⑤删除学号为20的学生记录;

____________________________________________________________ ⑥删除姓‘王’的学生记录;

____________________________________________________________

5.SQL语言是___________的语言,易学习。

A.过程化 B.非过程化 C. 格式化 D.导航式 6.SQL语言是___________语言

A.层次数据库 B.网络数据库 C.关系数据库 D.非数据库 7.SQL语言具有___________的功能。

A. 关系规范化、数据操纵、数据控制 B. 数据定义、数据操纵、数据控制 C. 数据定义、关系规范化、数据控制 D. 数据定义、关系规范化、数据操纵

8.SQL语言具有两种使用方式,分别称为交互式SQL和______________。 A.提示式SQL B.多用户SQL C.嵌入式SQL D.解释式SQL 9.SQL语言中,实现数据检索的语句是____________。

A.SELECT B.INSERT C.UPDATE D.DELETE 10.下列SQL语句中,修改表结构的是_________________。

A.ALTER B.CREATE C.UPDATE D.INSERT

11.试述SQL语言的特点 12.试述SQL语言的功能

13.什么是基本表?什么是视图?两者的区别和联系是什么? 14.所有的视图是否都可以更新?哪些视图不可更新,举例说明?

15.设有关系职工表(职工号,职工名,部门号,工资)和部门表(部门号,部门名,主任),用SQL语句完成下列要求: (1)向职工表中插入行(‘025’,‘王芳’,‘03’,1000)

________________________________________________________

(2)从职工表中删除人事处的所有员工

__________________________________________________________ (3)将职工号为‘001’的员工工资改为700元钱

____________________________________________________________ (4)查询人事处的员工最高工资

___________________________________________________________ (5)查询“王芳”所在部门的部门主任

_____________________________________________________________ (6)查询与“王芳”在同一部门的其它员工信息

_____________________________________________________________ (7)建立公司所有部门的公共视图——部门职工视图

______________________________________________________________ (8)从部门职工视图中查询财务处员工工资高于800元的员工信息

_______________________________________________________________

16.设有如下三个关系表:

Book(ID,Name,Author,Publish,Price) Reader(ID,Name,Sex,BirthDate)

Borrow(BookID,ReaderID,BorrowDate) 写出实现下列功能的SQL语句:

(1)向Reader表插入一条读者信息(05A110001,李丹,女,1880-4-1) _____________________________________________________________ (2)将Book表中所有清华大学出版社出版的21元的图书价格改为25元 __________________________________________________________ (3)从Borrow表中删除在2005-1-5之后的读者借书信息

____________________________________________________________ (4)查询图书表中的所有图书的最高价格

___________________________________________________________ (5)查询清华大学出版社出版的定价不超过25元的图书名称

_____________________________________________________________ (6)显示姓李且姓名只含两个字的作者撰写的图书信息

_____________________________________________________________ (7)求出版图书数量最多的出版社所出版的图书定价的平均值

______________________________________________________________ (8)求读者胡晓丹所借的图书编号、书名和出版社信息及借书时间

_______________________________________________________________

(9)创建一个读者借书的视图R _ B_View ( ReaderName, BookName, BookAuthor, BookPublish, BookPrice, BorrowDate)

___________________________________________________________________________ (10)从视图R_B_View中查找2005-5-22日借书的读者姓名和书名

___________________________________________________________________________

1. 请根据如下四张表做后面的练习:

学生表Student ( Sno, Name, Sex, Birthday, Class)

教师表Teacher ( Tno, Name, Sex, Birthday, Prof, Depart) 课程表Course ( Cno, CName, Tno)

成绩表Score ( Sno, Cno, Grade) 其中:

Student表中Sno是主码, Teacher表中Tno是主码,

Course表中的Tno是Teacher表的外码,

Score表中的Sno是Student表的外码、Cno是Course表的外码。

① 向student表添加Depart列的信息,要求类型为字符串型,最大长度30位;

② 向teacher表插入一条记录(010125,刘冰,女,1975-06-25,助教,电子工程系);

insert into teacher(‘010125’,‘刘冰’,‘女’,‘1975-06-25’,‘助教’,‘电子工程系’)

③ 将student表中学号为‘209’的学生班号改为‘95031’

④ 删除选修“刘冰”教师所教课程的学生选课信息

⑤ 显示student表中‘95031’班或性别为‘女’的同学记录

⑥ 查找最低分大于70分,最高分小于90分的学生No;

⑦ 查找score表中至少有5名学生选修的并以3开头的课程号的平均分数

⑧ 显示‘95033’班所选课程的平均分;

⑨ 显示“张旭”教师任课的学生成绩。

⑩ 显示选修某课程的同学人数多于5人的教师姓名

(11)显示所有存在85分以上成绩的课程cno

(12)显示选修了课程号为‘3-105’课程且成绩高于选修课程号为‘3-245’课程的学生的cno,no和grade。

(13)显示所有未讲课的教师的name和depart

(14)显示和李军同性别且同班的同学姓名

(15)显示所有选修’计算机导论’课程的男同学的成绩表

(16)显示最高分学生的no,cno和grade列

(17)按班级和年龄从大到小的顺序显示student表的全部记录

(18)建立一个包含所有学生no,name,cname,grade 和 class字段的视图degrees

(19)根据上题所建视图,查询‘95031’班级的学生选课信息

(20)查询选修四门课以上课程的学生总成绩(不统计不及格的课程)

2. 按照要求用SQL语句创建下面三张表: ?. 学生表:表名——Student

属性:Sno 字符型,最大7个字符 表示学生学号

Sname 字符型,最大8个字符 表示学生姓名 Sage 整型 表示学生年龄 Ssex 字符型,最大2个字符 表示学生性别 Sdate 日期时间型 表示学生入学时间 Sdept 字符型,长度为20 表示所在系

约束:主码——Sno 非空属性——Sname 默认入学时间——‘2000-09-01’ ?. 课程表:表名:Course

属性:Cno 字符型,最大4个字符 表示课程编号

Cname 字符型,最大10个字符 表示课程名 Cteacher 字符型,最大8个字符 表示教师姓名 Coffice 字符型,最大20个字符 表示办公室 约束:主码——Cno 非空属性——Cname ?. 选课表:表名——SC

属性:Sno 字符型,最大7个字符 表示学生学号

Cno 字符型,最大4个字符 表示课程号 Grade 整型 表示成绩 约束:主码——Sno,Cno; Sno,Cno均为外码 针对上面的三个基本表做如下的练习:

?.向基本表Student中插入学生元组(”0201901”,”ZHAO”,18,”女”,2002-08-31,NULL)

?.把WANG同学的选课记录全部删除

?.查询在C117办公室的老师所授课程的课程号和课程名 ?.查询平均成绩在75分以上的学生学号和其平均成绩

?.查询其他系比信息系年龄最小的学生还小的学生姓名、年龄 ?.查询所有缺考的学生的学号、姓名和系别

?.查询选修了“C01”课程的学生总人数和最高分数 ⑴.查询在2000-8-31日入学的男学生的学号和姓名 ⑵.查询与刘晨选修的一门课程相同的学生姓名

⑶.查询与QIAN老师在同一个办公室的其它老师的姓名

⑷.查询至少选修LIU老师所授课程中一门课程的女学生姓名 ⑸.查询哪些课程没有人选修

⑹.查询选修了课程‘C02’且成绩高于此课程的平均成绩的学生的学号和成绩 ⑺.求平均分最高的学生姓名

⑻. 显示20岁学生的基本信息和选课信息(课程名和分数),若没有选课,也要将基本信息显示出来

⑼. 建立计算机系选修了课程‘c01’的学生的视图 ⑽.建立视图(SGrade),包含每个学生的学号(Sno),选课门数(Count_Cno),平均分(Avg_Grade)

(21). 利用上述视图进行查询:列出平均分大于80分的学生的学号及其选课门数 (22). 查询选修了3门以上课程的学生学号

(23). 查询以DB开头且倒数第三个字母是i的课程的课程号、课程名


数据库SQL部分练习题集.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2016大学生职业生涯规划考试答案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

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