单选(无解析)

  1. (A)是对数据库中全部数据的逻辑结构和特征的描述。
    A.模式 B.外模式 C.内模式 D.视图

  2. (B)是对数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述
    A.模式 B.外模式 C.内模式 D.概念模式

  3. 数据库中的记录是按照B+树存储还是按hash方法存储,这一特征在数据库的(C)中定义。
    A.模式 B.外模式 C.内模式 D.子模式

  4. 概念模型的表示方法有很多种,其中最著名的是(B)。
    A.关系模型 B. E-R模型 C.层次模型 D.网状模型

  5. 数据库的概念模型(D)
    A. 独立于计算机硬件,依赖于 DBMS
    B. 依赖于计算机硬件,独立于 DBMS
    C. 依赖于计算机硬件和 DBMS
    D. 独立于计算机硬件和 DBMS

  6. 下列关系代数操作中复杂度最高的是(C)。
    A.投影 B.连接 C.选择 D. 交

  7. 若关系R和S的元组个数分别为m和n,则R∪S的元组个数为(B)。
    A.m+n B.小于或等于m+n C.大于m D.大于n

  8. 已知关系R1和R2进行关系运算后得到S,则S是(B)
    A. 一行记录 B. 一个关系 C. 一个确定值 D. 一个数组

  9. 若关系R和S的元组个数分别为m和n,则R-S的元组个数是(D)。
    A. m-n B.小于m C.小于n D.小于等于m

  10. 下列关系代数操作中最费时的是(B)。
    A.投影 B.笛卡尔积 C.选择 D.交

  11. 在信息系统的设计中,普遍采用的是基于(B)的系统设计方法。
    A. BCNF B.3NF C.2NF D.4NF

  12. 在函数依赖范畴内,(C)是关系模式能够达到的最高规范化程度。
    A.3NF B.4NF C.BCNF D.5NF

  13. 下列说法中错误的是(C)
    A. 模式分解是关系规范化的基本方法
    B. 实际应用中,数据库设计一般应达到3NF
    C. 若一个关系模式符合2NF,则它必然也符合3NF
    D. 实际应用中常常为了提高查询效率而允许数据库中存在一定的数据冗余

  14. 关系数据库中由数据冗余导致的异常不包括(D)。
    A.插入异常 B.删除异常
    C.修改异常 D.查询异常

  15. 设关系模式R(XYZ),已知存在函数依赖X->Y和Y->Z,则可作为R的候选键的是(A)。
    A. X B. Y C. Z D.已知条件无法判断候选键

  16. (A)是数据库系统的核心,是位于用户和操作系统之间的一层数据管理软件。
    A.DBMS B.DBS C.DBA D.DDL

  17. 数据库管理系统的英文缩写是(A)。
    A.DBMS B.DBA C.DBS D.MIS

  18. 下列不是关系数据库产品的是(D)。
    A.SQL Server B.Oracle C.DB2 D.IMS

  19. DBS指的是(B )。
    A. 数据库 B. 数据库系统 C. 数据库管理员 D. 数据库管理系统

  20. DBA指的是( C )。
    A. 数据库 B. 数据库系统 C. 数据库管理员 D. 数据库用户

  21. SQL Server系统中所有的系统级信息均存放在(A)数据库中。
    A. master B. model C. tempdb D. msdb

  22. 下列不属于SQL Server系统数据库的是( B )。
    A. master B. northwind C. tempdb D. msdb

  23. SQL Server数据库的主数据文件后缀是( B )。
    A. ldf B. mdf C. ndf D. swf

  24. SQL Server数据库日志文件的后缀是( A )。
    A. ldf B. ndf C. mdf D. swf

  25. SQL Server系统数据库中,( D )用于记录报警,任务调度,操作员的操作等信息。
    A .master B. model C. tempdb D. msd

  26. 关于索引,下列说法错误的是(C)。
    A. 索引可以加快数据的检索速度
    B. 建立索引会牺牲一定的系统性能
    C. 在一张表上可以建立多个聚集索引
    D. 在一张表上可以建立多个非聚集索引

  27. 关于视图,下列说法错误的是(B)。
    A.视图是虚拟表
    B.数据可以存放在视图中
    C.在视图上做查询与在基本表上做查询方法是相同的
    D.视图可以建立在多个基本表的基础之上

  28. 下面哪种情况下适合建立索引(C)。
    A. 经常进行插入操作的表 B. 行数较小的表
    C. 更新少而数据量大的表 D. 表中存在大量重复值的列

  29. 关于存储过程与触发器,下列说法正确的是(B)。
    A. 存储过程是存储在客户端的SQL程序 B. 触发器是一种特殊的存储过程
    C. 触发器可通过其名字被用户直接调用 D .存储过程是一种特殊的触发器

  30. 关于视图,下列说法正确的是(A)
    A. 建立视图语句的关键部分是查询语句
    B. 若导出某视图的数据库表被删除了,该视图不受任何影响
    C. 视图一旦建立,就不能被删除
    D. 当某一视图被删除后,导出该视图的数据库表将会受到影响

  31. 数据库应用程序开发中,需求分析阶段的主要目的是(A)。
    A.回答“做什么”的问题 B.回答“怎么做”的问题
    C.建立逻辑数据模型 D.建立最佳物理存储结构

  32. 在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是(B)
    A. 可行性分析 B.需求分析
    C. 概念设计 D.物理设计

  33. 实体与实体的联系,反映在数据上是(C)之间的联系
    A. 文件 B. 集合 C. 记录 D. 结构

  34. ( A )是在业务流程分析的基础上,描述实际数据流动和处理过程的图形表示法。
    A. DFD B. UML C. ER D. FLOWCHART

  35. 在数据库设计的需求分析阶段,( B )是数据库系统中各类数据详细描述的集合,提供了对各类数据描述的集中管理。
    A. DFD B. 数据字典 C. 实体联系图 D.数据集

  36. 关于主键约束,下列说法正确的是(A)。
    A.主键值不为空,也不允许出现重复 B.主键值不为空,但允许出现重复
    C.主键值允许空,但不允许出现重复 D.主键值允许空,也允许出现重复

  37. 关于参照完整性,下列说法中错误的是(A)。
    A.外键属性取值不能为空 B.关系中不允许引用不存在的实体
    C.可以通过定义外键实现 D.外键属性取值允许为空

  38. 在关系数据库中,"关系中不允许出现相同的元组"的约束可以通过定义(B)实现的
    A.超键 B. 主键 C. 外键 D. check约束

  39. 在实际应用中,常常需要在表中定义非空约束。数据库中的空值表示什么(C )。
    A.0 B.默认值 C.不确定 D.空格

  40. 下列不属于SQL Server数据库中的约束的是( D )。
    A. 主键约束 B. 外键约束
    C. 唯一约束 D. 空值约束

  41. 事务必须满足的四个原则是(A),一致性,隔离性,持久性。
    A. 原子性 B. 完整性 C. 安全性 D.正确性

  42. 事务并发执行时,每个事务不必关心其他事务,如同在单用户环境下执行一样,这个性质称为事务的(D)
    A. 持久性 B. 一致性 C. 独立性 D. 隔离性

  43. 一个事务中所有对DB的操作是一个不可分割的整体,这个性质称为(D)。
    A.完整性 B.一致性 C.隔离性 D.原子性

  44. 当多个事务同时读取或修改相同的数据库资源时,( A )是进行并发控制的主要方法。
    A. 锁 B. 互斥 C. 隔离 D. 游标

  45. ( A )是构成单一逻辑工作单元的操作集合,这些操作或者全部执行,或者全部不执行。
    A. 事务 B. 存储过程 C. 数据库对象 D. 触发器

  46. SQL中,下列涉及空值的操作,不正确的是(A)。
    A. AGE=NULL
    B. AGE IS NOT NULL
    C. AGE IS NULL
    D. NOT(AGE IS NULL)

  47. 在 SQL 语句中,与 X BETWEEN 20 AND 30 等价的表达式是(D)
    A. X>=20 AND X<30
    B. X>20 AND X<30
    C. X>20 AND X<=30
    D. X>=20 AND X<=30

  48. 关于SQL,下列说法正确的是(D)。
    A. 是过程化语言 B. 是机器语言
    C. 是面向对象语言 D. 是非过程化语言

  49. 当SELECT语句返回的结果是一个集合时,可以借助(B)对其中的单行记录进行处理。
    A. 锁 B. 游标 C.索引 D .存储过程

  50. 在SELECT语句中,能够实现对查询结果排序的操作是(B)
    A. COUNT B. ORDER BY C. GROUP BY D. INDEX

填空题

  1. SQL查询语句中,SELECT子句对应于关系代数中的 投影 操作。
  2. SQL查询语句中,WHERE子句对应于关系代数中的 选择 操作。
  3. SQL查询语句中,FROM子句对应于关系代数中的 笛卡尔积 操作。
  4. 关系代数中的 选择 操作是对一个关系进行水平分割。
  5. 关系代数中的 投影 操作是对一个关系进行垂直分割。
  6. 设关系R、S和W的元组个数分别为3、5和6,则这三个关系的笛卡尔积的元组个数为 90 。
  7. 设关系R、S和W的属性个数分别为2、3和4,则这三个关系的笛卡尔积的属性个数为 9
  8. 设关系R和S的元组个数分别为3和2,则R×S的元组个数为(6)。
  9. 设关系R和S的属性个数分别为3和4,则它们的笛卡尔积的属性个数为(7)。
  10. 设关系R中有5个元组,S中有4个元组,则R×S中有(20)个元组。
  11. nchar(10)用于存放固定长度的10个 Unicode 字符数据。
  12. char与varchar的区别在于, varchar 按可变长存储字符数据。
  13. char与nchar的区别在于, nchar 用于存放Unicode字符数据。
  14. char(10)数据类型占据 10 字节的存储空间。
  15. nchar(10)数据类型占据(20)字节的存储空间。
  16. 将年龄字段(age)限制在12~40岁之间,应如何定义约束(check age between 12 and 40 )。
  17. 将性别字段(sex)限制在’男’或’女’这两种取值,应如何定义约束
    (check sex in (’男’,’女’))。
  18. 已知课程表包括课程号,课程名和学分三个字段,课程号已被定义为主键,现要求限定课程名的取值不能重复,则应该在课程名字段上定义( 唯一 )约束。
  19. 已知商品表包括商品编号,商品名和价格三个字段,商品编号已被定义为主键,现要求限定商品名的取值不能重复,则应该在商品名字段上定义( 唯一 )约束。
  20. 一张表上可以定义多个主键,这种说法是( 错误 )的。(注:填写正确或错误)
  21. 创建数据库d的SQL语句是( create database d)。
  22. 删除数据库d的SQL语句是(drop database d)。
  23. 删除表t的SQL语句是(drop table t)。
  24. 删除视图v的SQL语句是(drop view v)。
  25. 向表中增加约束,或是更改表结构,需要用到( alter table )命令。
  26. 已知学生表存储学号,姓名,年龄信息,表结构如下:student(sid,sname,age),age为整型,其余字段为字符型。则向学生表中添加学号为1001,姓名为李华,年龄为20的记录,应该执行的SQL语句是
    ( insert into student values(‘1001’,’李华’,20) )。
  27. 已知员工表存储工号,姓名,出生日期信息,表结构如下:employee(eid, ename, birthdate),birthdate为datetime数据类型,其余字段为字符型。则向员工表中添加工号为2002,姓名为王刚,出生日期为1990年10月12日的记录,应该执行的SQL语句是( insert into employee values(‘2002’,’王刚’, ‘1990-10-12’) )。
  28. 已知图书表存储图书编号,图书名,作者信息,表结构如下:book(bid,bname,author),三个字段均为字符型。则向图书表中添加编号为b059,书名为数据结构,作者为张雷的记录,应该执行的SQL语句是
    ( insert into book values(‘b059’, ‘数据结构’,’张雷’) )。
  29. 已知成绩表存储学号,课程号和成绩信息,表结构如下:sc(sid,cid,score),score字段为整型,其余字段为字符型。则向成绩表中添加1001号学生选修c005号课程,成绩为80分的记录,应该执行的SQL语句是
    ( insert into sc values(‘1001’, ‘c005’,80) )。
  30. 已知课程表存储课程号,课程名,学分信息,表结构如下:course(cid,cname,credit),credit字段为整型,允许为空;其余字段为字符型。则向课程表中添加编号为c001,名称为数据库,学分待定的一门课程记录,应该执行的SQL语句是
    ( insert into course(cid,cname) values(‘c001’,’数据库’) )。
  31. 已知成绩表存储学号,课程号和成绩信息,表结构如下:sc(sid,cid,score),score字段为整型,其余字段为字符型。则从成绩表中删除1001号学生的所有选修记录,应该执行的SQL语句是
    ( delete from sc where sid=’1001’ )。
  32. 已知课程表存储课程号,课程名,学分信息,表结构如下:course(cid,cname,credit),credit字段为整型,其余字段为字符型。则从课程表中删除学分大于6的所有课程记录,应该执行的SQL语句是
    ( delete from course where credit>6 )。
  33. 已知图书表存储图书编号,图书名,作者信息,表结构如下:book(bid,bname,author),三个字段均为字符型。则从图书表中删除书名中包括数据库关键词的所有图书的记录,应该执行的SQL语句是
    ( delete from book where bname like ‘%数据库%’ )。
  34. 已知员工表存储工号,姓名,出生日期信息,表结构如下:employee(eid, ename, birthdate),birthdate为datetime数据类型,其余字段为字符型。则从员工表中删除工号为1001的员工的记录,应该执行的SQL语句是
    ( delete from employee where eid=’1001’ )。
  35. 已知借阅表存储用户名,图书编号和借阅时间信息,表结构如下:ub(uid,bid,borrowdate),borrowdate字段为日期型,其余字段为字符型。则从借阅表中删除早于1980年1月1日的借阅记录,应该执行的SQL语句是
    ( delete from ub where borrowdate<’1980-1-1’ )。
  36. 已知成绩表存储学号,课程号和成绩信息,表结构如下:sc(sid,cid,score),score字段为整型,其余字段为字符型。则将1001号学生选修c005课程的成绩增加百分之五,应该执行的SQL语句是
    ( update sc set score=score*1.05 where sid=’1001’ and cid=’c005’ )。
  37. 已知课程表存储课程号,课程名,学分信息,表结构如下:course(cid,cname,credit),credit字段为整型,其余字段为字符型。则将数据结构课程的学分修改为4,应该执行的SQL语句是
    ( update course set credit=4 where cname=’数据结构’ )。
  38. 已知图书表存储图书编号,图书名,作者信息,表结构如下:book(bid,bname,author),三个字段均为字符型。则将图书编号为b049的图书的作者修改为张雷,应该执行的SQL语句是
    ( update book set author=’张雷’ where bid=’b049’ )。
  39. 已知员工表存储工号,姓名,出生日期信息,表结构如下:employee(eid, ename, birthdate),birthdate为datetime数据类型,其余字段为字符型。则将1001号员工的出生日期修改为1995年10月20日,应该执行的SQL语句是
    ( update employee set birthdate=’1995-10-20’ where eid=’1001’ )。
  40. 已知学生表存储学号,姓名,年龄信息,表结构如下:student(sid,sname,age),age为整型,其余字段为字符型。则将所有学生的年龄增长一岁,应该执行的SQL语句是
    ( update student set age=age+1 )。

设计题

1、一个运动会管理系统数据库中有如下信息:
运动员(运动员编号,姓名,性别)
比赛(比赛编号,名称,时间)
裁判员(裁判员编号,姓名)
其中约定:一个运动员可参加多场比赛,一场比赛可有多个运动员参加,运动员参加比赛产生成绩;一场比赛有一个裁判员,一个裁判员可主持多场比赛。
根据以上情况,完成下述设计:
(1)设计系统的E-R图

(2)将E-R图转换为关系模式,并指定其中的主键和外键

2、一个仓库管理数据库中有如下信息:
 仓库:仓库号,地址,电话
 零件:零件号,零件名称,规格,单价
 管理员:工号,姓名,性别
其中约定:一种零件可存放在多个仓库中,一个仓库可存放多种零件,零件存放在仓库中有库存量。一个仓库有多名管理员,一个管理员仅可以管理一个仓库。根据以上情况,完成下述设计:
(1) 设计系统的E-R图

(2) 将E-R图转换为关系模式,并指定其中的主键和外键


3、某商业集团的销售管理系统数据库中有如下信息:
 商店:商店编号,商店名,地址
 商品:商品编号,商品名,规格,单价
 职工:工号,姓名,性别,业绩
其中约定:一个商店可销售多种商品,一种商品可在多个商店销售,每个商店对所销售的每一种商品按月进行销量统计;一个商店有多名职工,一个职工仅在一个商店任职,商店聘用职工有月薪。根据以上情况,完成下述设计:
(1) 设计系统的E-R图

(2) 将E-R图转换为关系模式,并指定其中的主键和外键

4、一个图书馆管理系统中有如下信息:
 图书:书号,书名,数量,位置
 借书人:借书证号,姓名,单位
 出版社:出版社名,地址,电话,Email
其中约定:任何人都可以借多种书,任何一种书可以被多个人借,借书和还书时要登记借阅时间;一个出版社可以出版多种书籍,同一本书仅由一个出版社出版,出版社名具有唯一性。根据以上情况,完成下述设计:
(1)设计系统的E-R图

(2)将E-R图转换为关系模式,并指定其中的主键和外键

一个教学管理系统中有如下信息:
 学生:学号,姓名,性别,年龄
 课程:课程号,课程名,学分
 班级:班级名,班主任
 教师:工号,姓名
其中约定:一个学生属于一个班级,一个班级包括多名学生;一个学生可选修多门课程,一门课程可由多个学生选修,学生选修的每门课程均有相应的成绩;一个教师可教授多门课程,一门课程仅由一个教师教授。根据以上情况,完成下述设计:
(1) 设计系统的E-R图

(2) 将E-R图转换为关系模式,并指定其中的主键和外键

综合应用题

1.已知商品销售数据库中包括三张表:
 员工信息表employee(eid,ename,age,sex,tel),存放员工的工号、姓名、年龄、性别以及电话信息; (年龄字段为整型、其余均为字符型)
 商品信息表goods(gid,gname,type,price),存放商品的商品编号,商品名称,类别以及价格;(价格字段为money型,其余均为字符型)
 销售信息表eg(eid,gid,quantity,saledate),存放员工工号、商品编号,销售数量和销售时间信息;(销售时间字段为datetime类型,其余均为字符型)

(1)利用SQL查询年龄在40到50岁之间(含40,50)的员工信息,按年龄由小到大排序;
select *
from employee
where age between 40 and 50
order by age asc

(2)利用SQL查询2017年10月1日的销售记录,包括员工工号,姓名,商品编号,商品名;
select employee.eid, ename, goods.gid,gname
from employee,goods,eg
where employee.eid=eg.eid and goods.gid=eg.gid and saledate=‘2017-10-1’

(3)利用SQL查询所有姓李的员工的工号,姓名以及电话;
select eid, ename,tel
from employee
where ename like ‘李%’

(4)利用SQL创建存储过程,统计各类别商品的平均价格;
create procedure myproc
as
select type,avg(price)
from goods
group by type

(5)利用SQL查询员工李华销售出的商品的总数量;
select sum(quantity)
from employee,eg
where employee.eid=eg.eid and ename=‘李华’

(6)利用SQL查询在2017年10月1日销售业绩为0的员工的工号和姓名;
select eid, ename
from employee
where eid not in ( select eid
from eg
where saledate=‘2017-10-1’)

(7)利用关系代数表达式查询所有工号为1001的员工所销售商品的名称以及销售时间。

2、已知图书管理数据库中包括三张表:
 学生信息表student(sid,sname,age,sex,major),存储学生的学号、姓名、年龄、性别以及专业名称;(年龄字段为整型,其余字段均为字符型)
 图书信息表book(bid,bname,author,press,price,ISBN),存储图书的编号、书名、作者、出版社、价格和ISBN号;(价格字段为整型,其余字段均为字符型)
 图书借阅记录表sb(sid,bid,borrowdate),存储学号、图书编号、借阅日期;(学号与图书编号为字符型,借阅日期为日期型)

(1) 利用SQL查询年龄在20到25岁(含20,25)之间的学生信息
select *
from student
where age between 20 and 25

(2) 利用SQL查询清华大学出版社出版的书籍的图书编号,图书名和价格,按价格由低到高排序
select bid,bname,price
from book
where press=‘清华大学出版社’
order by price

(3) 利用SQL查询所有姓李的学生的姓名、年龄、性别和专业
select sname,age,sex,major
from student
where sname like ‘李%’

(4) 利用SQL查询借阅过数据结构书籍的学生的姓名和借阅时间
select sname,borrowdate
from student,book,sb
where student.sid=sb.sid and book.bid=sb.bid and bname=‘数据结构’

(5) 利用SQL创建一个存储过程,统计各专业的学生人数(存储过程名称自定义)
create procedure myprocedure
as
select major, count(sid)
from student
group by major

(6) 利用SQL查询年龄大于平均年龄的学生的信息
select *
from student
where age>( select avg(age)
from student)

(7) 利用关系代数表达式查询年龄大于等于30岁的学生借阅的图书书名

3、已知教学管理数据库中包括三张表:
 教师信息表teacher(tid,tname,age,sex,title),存储教师的工号、姓名、年龄、性别以及职称信息; (年龄字段为整型、其余均为字符型)
 课程信息表course(cid,cname),存储课程的课程号和课程名称;(字段均为字符型)
 授课信息表tc(tid,cid),存储教师工号、课程号 (字段均为字符型)
(1) 利用SQL查询年龄在30到40岁之间(含30,40)的教师信息,按年龄由小到大排序
select *
from teacher
where age between 30 and 40
order by age asc

(2) 利用SQL查询所有姓张的教师的姓名、年龄和性别
select tname,age,sex
from teacher
where tname like ‘张%’

(3) 利用SQL查询讲授“数据库”课程的教师的工号
select tid
from course, tc
where course.cid=tc.cid and cname=‘数据库’

(4) 利用SQL创建存储过程,统计各个专业技术职称的教师人数
create procedure myprocedure
as
select title,count(tid)
from teacher
group by title

(5) 利用SQL查询教师李华的授课数量
select count(cid)
from teacher,tc
where teacher.tid=tc.tid and tname=‘李华’

(6) 利用SQL查询年龄小于所有教师平均年龄的男性教师的工号与职称
select tid,title
from teacher
where sex=‘男’ and age<( select avg(age)
from teacher)

(7) 利用关系代数表达式查询所有职称为教授的教师讲授课程的课程名称

4、已知网上图书销售系统数据库中包括三张表:
 客户信息表customer(cid,cname,email,tel,address),存放客户账号、姓名、电子邮箱、电话以及地址; (所有字段均为字符型)
 图书信息表book(bid,bname,author,press,price,ISBN),存放图书编号、书名、作者、出版社、价格和ISBN号; (价格字段为整型,其他字段均为字符型)
 图书购买记录表cb(cid,bid,shoppingdate,quantity),存放客户账号、图书编号、购买日期、数量。 (购买日期为日期型,数量为整型,其他字段均为字符型)

(1)利用SQL查询价格在50元到100元(含50、100元)之间的图书的书名、作者与价格;
select bname,author,price
from book
where price between 50 and 100

(2)利用SQL查询购买了编号为b001的图书的客户的账号和购买日期,按购买日期由先到后排序;
select cid,shoppingdate
from cb
where bid=‘b001’
order by shoppingdate asc

(3)利用SQL查询所有地址中含有“杨浦”关键字的客户的姓名、电话和地址;
select cname,tel,address
from customer
where address like ‘%杨浦%’

(4)利用SQL查询一次购买了超过50本《数据库应用技术》图书的客户的姓名;
select cname
from customer,book,cb
where customer.cid=cb.cid and book.bid=cb.bid
and bname=‘数据库应用技术’ and quantity>50

(5)利用SQL创建一个视图,统计各出版社出版的图书的平均价格(视图名称自行定义);create view myview
as
select press, avg(price) as avgprice
from book
group by press

(6)利用SQL查询没有购买过图书的客户的姓名和电话;
select cname,tel
from customer
where cid not in ( select cid
from cb)

(7)利用关系代数表达式查询购买了《数据库应用技术》的客户姓名

5、已知教学管理数据库中包括三张表:
 学生信息表student(sid,sname,age,sex,major),存放学生的学号,姓名,年龄,性别以及专业信息;(年龄字段为整型,其余字段均为字符型)
 课程信息表 course(cid,cname),存放课程的课程号和课程名;(所有字段均为字符型)
 选课信息表 sc(sid,cid,score),存放学号、课程号以及成绩;(成绩字段为整型,其余字段均为字符型)

(1)利用SQL查询年龄在20到30岁(含20与30)之间的女学生信息
select *
from student
where sex=‘女’ and age between 20 and 30
(2) 利用SQL查询选修了课程号为c001课程的学生的学号和成绩,按成绩由高到低排序select sid,score
from sc
where cid=‘c001’
order by score desc

(3) 利用SQL查询所有姓名中含有华字的学生的姓名,年龄和性别
select sname, age, sex
from student
where sname like ‘%华%’

(4) 利用SQL创建视图,统计各门课程考试成绩的最高分
create view myview
as
select cid, max(score) as maxscore
from sc
group by cid

(5) 利用SQL查询李华同学选修的所有课程的课程名以及成绩
select cname, score
from student, course, sc
where student.sid=sc.sid and course.cid=sc.cid and sname=‘李华’

(6) 利用SQL查询没有被选修的课程的课程名
select cname
from course
where cid not in ( select cid
from sc)

(7) 利用关系代数表达式查询机械电子专业学生选修的课程名

问答题

1、试列举数据库系统的主要组成部分。
答: 数据库,数据库管理系统,数据库应用系统,数据库管理员,数据库开发工具和用户。

2、试论述存储过程的概念。
答: 存储过程是SQL语句和可选流程控制语句的预编译集合,可接受输入参数,输出参数,返回单个或多个结果集以及返回值,可由应用程序调用执行。
存储过程的优点是:允许模块化程序设计;允许更快速地执行;减少网络流量;可作为安全机制使用。

3、根据关系规范化理论,一个设计不好的关系模式存在哪些问题?关系规范化的一般方法是什么?可结合实例进行阐述。
答: 一个设计不好的关系模式会导致较大的数据冗余,而数据冗余又会导致更新异常,插入异常和删除异常,造成数据的不一致。关系规范化的一般方法是模式分解,即将一个设计不够好的关系模式分解为一组规范化级别更高的关系模式。在实际应用中,通常需要规范化到3NF。结合实例部分可自由发挥。

4、试论述数据库管理系统的功能。
答: 数据库管理系统是数据库系统的核心,它是建立在操作系统的基础上,位于用户与操作系统之间的一层数据管理软件。它为用户或应用程序提供访问数据库的方法,同时它还承担着数据库的维护工作,保证数据库的安全性和完整性。

5、试结合实例阐述关系模型的参照完整性规则。
答: 参照完整性规则是:若属性F是基本关系R的外键,它与基本关系S的主键相对应,则R中每个元组在属性F上的取值或者为空,或者等于S中某个元组的主键值。参照完整性的实质是不能引用不存在的实体。
结合实例阐述部分可由学生自由发挥,视答题情况给分。例如,教师(工号,姓名)和课程(课程号,课程名,工号),其中课程表中的工号引用了教师表中的工号,其各个记录中工号部分的取值或者为空,或者等于教师表中某个教师的工号。

6、试论述索引的概念。
答: 索引是对数据库表在能够一个或多个列的值进行排序的结构,其主要目的是加快数据的查询速度和减少系统的响应时间。
索引的优点包括:加快数据的检索速度;创建唯一性索引可保证表中每一行数据的唯一性;加速表和表之间的连接等。但是创建索引和维护索引会消耗时间,另外,每个索引都会占用一定的物理空间,因此索引在带来诸多优势的同时也让系统付出了一定的代价。

7、什么是关系?试列举不少于三种关系数据库产品。
答: 在关系数据模型中,现实世界的实体以及实体间的各种联系均用关系来表示。在用户看来,关系是一种规范化了的二维表格,是一个属性数目相同的元组的集合。
常见的关系数据库产品包括SQL Server,Oracle,DB2,Access等。

8、什么是数据库备份?SQL Server提供了哪些备份方式?
答: 数据库备份就是在某种介质上创建完整数据库(或其中一部分)的副本,并将所有数据项都复制到备份集,以便在数据库遭到破坏时能够恢复数据库。
SQL Server的备份方式包括:完全数据库备份,差异数据库备份,事务日志备份,数据库文件或文件组备份。

9、试论述视图的概念。
答: 视图是从一个或多个基本表中使用select语句导出的虚拟表,视图也可以定义在其他视图的基础上。
视图的优点主要包括:简化用户的数据查询和处理;保证数据的逻辑独立性;重新定制数据,使得数据便于共享;数据保密等。

10、试论述数据库的逻辑数据独立性和物理数据独立性。
答: 数据库的三级模式二级映像结构保证了逻辑独立性和物理独立性。
当模式改变时,由DBA对各个外模式/模式映像作相应改变,可以使外模式保持不变,因此依据数据的外模式编写的应用程序不必修改,保证了数据与程序的逻辑独立性。
当数据库的存储结构发生改变时,由DBA对模式/内模式映像作相应改变,可使模式保持不变,因而应用程序也不需要修改,保证了数据与程序的物理独立性。

11、设有关系模式R(工号,姓名,性别,部门号,部门名,部门负责人),若规定:一个职工属于一个部门,一个部门有多名职工,一个部门仅有一个负责人,每个负责人仅能负责一个部门,
(1)R最高符合第几范式,说明理由;
(2)若R不是3NF,将其分解为3NF,并指定其中的主键和外键。

答:(1)R最高符合2NF。由于R的主键是单一属性工号,因此必然是2NF。又由于工号->部门号,且部门号->部门名,因此工号->部门名是一个传递函数依赖,则R不符合3NF。(阐述理由部分可由学生自由发挥)
(2)
R1(工号,姓名,性别,部门号),其中工号为主键,部门号为外键
R2(部门号,部门名,部门负责人),其中部门号为主键

12、设有关系模式R(学号,姓名,性别,图书号,图书名,出版社,借阅时间),若规定,一个学生可以借阅多本图书,一本图书一次仅能借给一个学生,
(1)R最高符合第几范式,说明理由;
(2)若R不是3NF,将其分解为3NF,并指定其中的主键和外键。
答: (1)R最高符合1NF。由于R的主键是(学号,图书号,借阅时间)。由于(学号,图书号,借阅时间)->姓名,并且学号->姓名,因此R中存在主键到非主属性的部分函数依赖,所以R不符合2NF。(阐述理由部分可由学生自由发挥)
(2) R1(学号,姓名,性别),其中学号为主键
R2(图书号,图书名,出版社),其中图书号为主键
R3(学号,图书号,借阅时间),其中(学号,图书号,借阅时间)为联合主键,且存在两个外键:学号,图书号

13、设有关系模式R(运动员编号,姓名,性别,项目号,项目名,比赛成绩),若规定:一个运动员可参加多个比赛项目,一个项目可由多名运动员参加,
(1)R最高符合第几范式,说明理由;
(2)若R不是3NF,将其分解为3NF,并指定其中的主键和外键。
答: (1)R最高符合1NF。由于R的主键是(运动员编号,项目号)。由于(运动员编号,项目号)->姓名,并且运动员编号->姓名,因此R中存在主键到非主属性的部分函数依赖,所以R不符合2NF。(阐述理由部分可由学生自由发挥)
(2)
R1(运动员编号,姓名,性别),其中运动员编号为主键
R2(项目号,项目名),其中项目号为主键
R3(运动员编号,项目号,比赛成绩),其中(运动员编号,项目号)为联合主键,且存在两个外键:运动员编号,项目号

14、设有关系模式R(学号,姓名,性别,系号,系名,系主任),若规定:一个学生属于一个系,一个系有多个学生,一个系有一个系主任,一个人仅能担任一个系的系主任,
(1)R最高符合第几范式,说明理由
(2)若R不是3NF,将其分解为3NF,并指定其中的主键和外键。
答: (1)R最高符合2NF。由于R的主键是单一属性学号,因此必然是2NF。又由于学号->系号,且系号->系名,因此学号->系名是一个传递函数依赖,则R不符合3NF。(阐述理由部分可由学生自由发挥)
(2)
R1(学号,姓名,性别,系号),其中学号为主键,系号为外键
R2(系号,系名,系主任),其中系号为主键

15、设有关系模式R(学号,姓名,性别,课程号,课程名,成绩),若规定:一个学生可以选选多门课程,一门课程可由多个学生选修,
(1)R最高符合第几范式,说明理由;
(2)若R不是3NF,将其分解为3NF,并指定其中的主键和外键。
答: (1)R最高符合1NF。由于R的主键是(学号,课程号)。由于(学号,课程号)->姓名,并且学号->姓名,因此R中存在主键到非主属性的部分函数依赖,所以R不符合2NF。(阐述理由部分可由学生自由发挥)
(2)R1(学号,姓名,性别),其中学号为主键
R2(课程号,课程名),其中课程号为主键
R3(学号,课程号,成绩),其中(学号,课程号)为联合主键,且存在两个外键:学号和课程号

数据库原理及应用复习资料相关推荐

  1. [渝粤教育] 西南石油大学 数据库原理及应用 参考 资料

    教育 -数据库原理及应用-章节资料考试资料-西南石油大学[] SPOC-第1章 单元测验 1.[单选题]DB.DBMS和DBS三者之间的关系是( ). A.DB包括DBMS和DBS B.DBS包括DB ...

  2. [渝粤教育] 西南科技大学 数据库应用 在线考试复习资料(1)

    数据库应用--在线考试复习资料 一.单选题 1."表达式生成器"是用来书写什么的? A.代码 B.程序 C.表达式 D.数据库 2.在使用计算控件时,每个表示式前必须加上哪种运算符 ...

  3. [渝粤教育] 西南科技大学 数据库应用 在线考试复习资料

    数据库应用--在线考试复习资料 一.单选题 1."表达式生成器"是用来书写什么的? A.代码 B.程序 C.表达式 D.数据库 2.在使用计算控件时,每个表示式前必须加上哪种运算符 ...

  4. [渝粤教育] 西南科技大学 管理学原理 在线考试复习资料(5)

    管理学原理--在线考试复习资料 一.单选题 1.通常所说的"小道消息"属于: A.双向沟通 B.口头沟通 C.非正式沟通 D.用含蓄的形式进行沟通 2.古人云:"运筹于帷 ...

  5. [渝粤教育] 西南科技大学 数据库应用 在线考试复习资料(3)

    数据库应用--在线考试复习资料 一.单选题 1."表达式生成器"是用来书写什么的? A.代码 B.程序 C.表达式 D.数据库 2.在使用计算控件时,每个表示式前必须加上哪种运算符 ...

  6. [渝粤教育] 西南科技大学 会计学原理 在线考试复习资料(1)

    会计学原理--在线考试复习资料 一.单选题 1.资产负债表是反映企业(      )财务状况的会计报表. A.某一特定日期 B.一定时期内 C.某一月份内 D.某一年份内 2.某企业本期盘亏的材料已查 ...

  7. [渝粤教育] 西南科技大学 管理学原理 在线考试复习资料(1)

    管理学原理--在线考试复习资料 一.单选题 1.通常所说的"小道消息"属于: A.双向沟通 B.口头沟通 C.非正式沟通 D.用含蓄的形式进行沟通 2.古人云:"运筹于帷 ...

  8. [渝粤教育] 山东财经大学 数据库原理及应用 参考 资料

    教育 -数据库原理及应用-章节资料考试资料-山东财经大学[] 数据库设计作业 数据模型与关系数据库测验 1.[单选题]关系模型.层次模型 .网状模型的划分依据是 () A.记录长度 B.文件大小 C. ...

  9. [渝粤教育] 西南科技大学 教育学原理 在线考试复习资料

    教育学原理--在线考试复习资料 一.单选题 1.关于家庭教育,下面说法错误的是 ( ). A.儿童出生后的第一所学校可以说是家庭 B.儿童出生后的第一任教师是自己的父母 C.家庭教育在人的发展中起主导 ...

  10. [渝粤教育] 西南科技大学 数据库应用 在线考试复习资料(4)

    数据库应用--在线考试复习资料 一.单选题 1."表达式生成器"是用来书写什么的? A.代码 B.程序 C.表达式 D.数据库 2.在使用计算控件时,每个表示式前必须加上哪种运算符 ...

最新文章

  1. kafka概念使用简介注意点
  2. CDN如何实现,关键技术是什么?
  3. 【比较】CWebBrowser2类Navigate方法的一些问题
  4. poj 3278 Catch That Cow (bfs)
  5. “以毒攻毒”?阿里将上线“二哈”防骚扰电话应用程序
  6. python 工作路径
  7. iis 回收工作进程时出错的解决办法
  8. 官方原版Windows XP SP3(VOL)简体中文版ISO下载
  9. 小米4 第三方re奇兔_小米手机刷机教程整合版
  10. 日本专利检索地址和专利号码问题
  11. java yyyymmdd 的date_用Java解析YYYYMMdd日期的最快方法
  12. TensorFlow XLA优化原理与示例
  13. 《纽约客》特写Jeff Dean与Sanjay:谷歌唯二11级工程师,同一台电脑上写代码
  14. BurpSuite实战十九之XSS检测实战
  15. aspose.words生成word文档(.dox、.docx等)时,生成目录后,目录中的页码和实际页码不对应,代码中更新域都没用
  16. RxSwift | 万物皆 rx 的原因
  17. GlidedSky爬虫-验证码1
  18. 实验8 缓冲区溢出攻击实验
  19. 使用pdfcrack破解PDF密码(Linux)
  20. sicily题目分类

热门文章

  1. wordpress 静态化_品牌化WordPress网站的10个基本步骤
  2. 十八.linux开发之Kernel移植——从三星官方内核开始移植
  3. 怎样进行电路板的抗干扰设计
  4. Python中的飞机大战,求助
  5. DCIC2021_task1
  6. 鸿蒙事业单位专业技术,事业单位专业技术岗基本工资的具体标准
  7. [idea端口被占用] Web server failed to start. Port 8090 was already in use.
  8. JqGrid 使用方法详解
  9. 一、T100 质量管理基本资料设定
  10. ios升级14之后微信小程序picker组件样式乱套了,picker组件样式有问题,解决办法是自己用picker-view写了个通用的选择器组件,这下所有问题都解决了