数据库基础与应用_第1页
数据库基础与应用_第2页
数据库基础与应用_第3页
数据库基础与应用_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、一、填空题1、数据库处理技术经历了人工管理、文件系统数据库系统2、任一种数据模型都有型和值的区别。3、专门的关系运算包括 ,选择 投影、连接和除四种。4、设一个关系 A 具有 a1 个属性和 a2 个元组,关系 B 具有 b1 个属性和 b2 个元组,则关系 A ×B 具有 a1+b1 个属性和 a2*b2 个元组。5、在一个关系R 中,若 X Y ,并且X的任何真子集都不能函数决定Y,则称 XY 为完全函数依赖,否则,若XY,并且 X 的一个真子集也能够函数决定Y ,则称 X Y 为部分函数依赖。6、若一个关系中只有一个候选码,并且该关系达到了第三范式,则表明它同时也达到了 BC

2、范式,该关系中所有属性的决定因素都是候选码。7、在 SQL 中,建立、修改和删除数据库中基本表结构的命令分别为createtablealter table 和 drop table 命令。8、基本表属于全局模式中的表,它是实表,而视图则属于局部模式中的表,它是虚表。9、一个数据库应用系统的开发过程大致相继经过需求分析逻辑设计物理设计、概念设计、机器实现、运行维护等六个阶段。10、Access 的用户操作界面由标题栏、菜单栏工具栏工作区、状态栏等五个部分组成。11、数据访问页是直接链接到Access 数据库的一种 Web 页,可以在 IE5.0 或更高版本中调用数据访问页。12、模块是用 Acc

3、ess 提供的 VBA 语言编写的程序段。13、SQL Server 提供了动态的自我管理机制,能够自动增大或缩小数据库所占用的硬盘空间。14、 Microsoft SQL Server2000 是运行在 Windows 操作系统平台上的、逻辑模型为关系型数据库管理系统。15、SQL Server 支持两种形式的变量,即全局 变量和局部变量。16 、函 数RIGHT( abcdef,2) 的 结 果 是ef。17、数据库备份和恢复的Transact-SQL 语句 分 别 是BACKUPDATABASE和RESTORE DATABASE 。18、触发器是一种特殊的存储过程, 它可以在对一个表上进

4、行插入 . 删除和修改操作中的任一种或几种操作时被自动调用执行。19、 DB2 UDB 提供了一套具有统一的图形用户界面的管理工具, 用于与任何服务器平台的数据库进行交互。 这些管理工具最主要的二个是控制中心 和命令中心。20、在 Oracle 9i 内提供了一套具有图形用户 界 面 的 数 据 库 管 理 工 具 Oracle Enterprise Manager(OEM )。二、选择题1、下列(C )图标是Access 中表对象的标志。ABCD2、下面有关表的叙述中错误的是( C )。A 表是 Access 数据库中的要素之一B 表设计的主要工作是设计表的结构C Access 数据库的各表

5、之间相互独立D 可以将其他数据库的表导入到当前数据库中3、 Access 中字段的“小数位”属性被用来指定( A )型数据的小数部分的位数。A 货币和数字B 货币和备注C文本和数字D 数字和备注4、下列(D)图标是Access 中新建宏的标志。ABCD 5、模块窗口由(B)个部分组成。BA2B3C4D 56、可以通过 Internet 进行数据发布的对象是(D)。A 窗体B报表C查询D数据访问页7、提高 SQL Server 性能的最佳方法之一是( B)。A. 增大硬盘空间B. 增加内存C.减少数据量D. 采用高分辨率显示器8、语句“ USE master GO SELECT * FROMsy

6、sfiles GO ”包括( A)个批处理。A. 1B. 2C.3D.49、当一条 SELECT 语句访问一张大表里的有限几行数据时, SQL Server 通常会(B )。A. 为数据加上页级锁 B. 为数据加上行级锁C. 需要用户的干涉和参与 D. 使用户独占数据库10、Transact-SQL 对标准 SQL 的扩展主要表现为(A)。A. 加入了程序控制结构和变量 B. 加入了建库和建表语句C. 提供了分组( Group By)查询功能 D. 提供了 Min 、Max 待统计函数11、以下哪种情况应尽量创建索引( A )。A. 在 Where 子句中出现频率较高的列B. 具有很多 NUL

7、L 值的列C. 记录较少的基本表D. 需要更新频繁的基本表12、下列 SQL Server 语句中出现语法错误的是( D )。A. DECLARE MyvarINTB. SELECT * FROM AAAC. CREATE DATABASE AAA D. DELETE * FROM AAA13、属于事务控制的语句是(A)。A. Begin Tran 、Commit 、RollBack B. Begin 、Continue 、EndC. Create Tran 、 Commit 、RollBack D. Begin Tran 、 Continue 、End14、下列( C )标识符可以作为局部变

8、量使用。A. MyvarB. My varC. MyvarD. My var三、学生选课数据库有三个表即学生表 S、课程表 C 和学生选课表 SC,它们的结构如下所示,请根据所给的每种功能写出相应的查询语句。S( S# , SN ,SEX, AGE ,DEPT )C( C# , CN)SC(S# , C# ,GRADE )其中:S#为学号,SN 为姓名,SEX为性别, AGE 为年龄, DEPT 为系别, C# 为课程号, CN 为课程名, GRADE 为成绩。1、 统计学生选课数据库中学生的总人数。SELECT COUNT ( * ) AS 学生总人数FROMS2、 查询学生姓名及其所选修课

9、程的课程号和成绩。SELECT SSN,CC# , SCC#,SC GRADEFROMS,SCWHERESS#=SCS#3、 从学生选课库中查询出被2 至 4 名学生选修的所有课程信息。SELECT*FROMCWHEREEXISTS( SELECT C#FROMSCWHEREC .C#=SC.C#GROUPBYC#HAVINGCOUNT ( * )BETWEEN2AND4)4、 从学生选课库中查询出选修至少两门课程的学生学号。SELECT DISTINCT C1.S# FROM SC C1,SC C2WHEREC1.S#=C2.S#ANDC1.C#<>C2.C#四、简单应用题1、假

10、设学生关系 S、课程关系 C 和选课关系 SC 与上面第三题所述相同,请用关系代数表达式表示下列查询。( 1)、查询年龄大于 21 岁的男学生的学号和姓名。S#, SN ( AGE>21 SEX=男(S )( 2)、查询姓名为变量 K 的值的学生所选修的全部课程信息CC# ( SC( SN=K(S ) ) )2、设一个关系为 R(A,B,C,D,E) ,它的最小函数依赖集为 FD=A B,A C,(A,D) E,则该关系的候选码为什么?该关系属于第几范式,请简要地说明理由。解:该关系的候选码为( A, D)。因为该关系中存在有部分函数数依赖, 即A B,A C, B ,C 只依赖于候选码

11、的部分 A ,所以该关系只属于第一范式。3、简要回答下列问题( 1)、 Access 的数据库对象有哪些?答: Access 数据库包含有七个数据库操作对象,它们分别是:表、查询、窗体、报表、页、宏和模块。( 2)简述宏的创建过程。答:一般利用宏设计器创建宏对象。其主要步骤有:在数据库窗口中,选择“宏”对象,然后单击“新建宏”按钮,并打开条件列,进入“宏”编辑窗口;选择“宏”操作和选择操作参数,并在“备注”列中输入注释,如果有需有,在条件列中输入条件表达式;重复上述过程直到输入所有的宏动作,再保存“宏”后退出。4、假设存在名为 AAA 的数据库,包括 S (S# char(8),SN varc

12、har(8) , AGE int ,DEPT varchar(20) ,DateT DateTime)和SC( S# char(8),CN varchar(10),GRADEnumeric(5,2) )两张表。请按下列要求写一存储过程。要求为:修改 SC 表中学号为 s1 的值、课程名为 c1 的值的学生成绩为 g1 的值。CREATE PROCEDUREPROC3(s1 char(8),c1 varchar(10),g1 numeric(5,2)ASBEGINUPDATESCSETGRADE=g1WHERES#=s1ANDCN=c1END二、根据主教材第四章所给的商品库和教学库,按照下列所给

13、的每条 SQL 查询语句写出相应的功能。1 select distinct产地from商品表 2解 : 从商品库中查询出所有商品的不同产地。2 selectcount(distinct产地 ) as 产地数from商品表 2解 : 从商品库中查询出所有商品的不同产地的总数。3 select学 生 . 学 生号 ,count(*) as选课门数from学生 ,选课where学生 .学生号 = 选课 .学生号group by学生 . 学生号解 : 从教学库中查询出每个学生选课的门数。4 select distinct x.*from学生x, 选课y, 选课zwherey. 学生号 =z. 学生号

14、and y. 课程号 <>z.课程号and x. 学生号 =y. 学生号解 : 从教学库中查询出至少选修了两门课程的全部学生。5 select x.学生号 ,y. 学生号 ,y.课程号from 选课 x, 选课 y where x. 学生号 =s1and y. 学生号 =s2andx. 课程号 =y. 课程号解: 从教学库中查 询出学生号为 s1 的学生和学生号为 s2 的学生所选修的共同课程的课程号。6 select *from课程whereexists(select课程号from选课where课程.课程号 = 选课.课程号groupby课 程 号having count(*)

15、between 2 and 4)解 : 从教学库中查询出被 2 至 4 名学生选修的所有课程。7 select *from学生where学生号in (select学生号from选课groupby学 生 号having count(*)<=2) or not exists (select *from选课where学生 .学生号 = 选课.学生号)解 : 从教学库中查询出最多选修了2 门课程(含未选任何课程) 的全部学生。8 select *from学生where not exists (selecty. 课程号from 学生 x inner join 选课 y on x. 学生号 =y.

16、学生号where x.姓名 =a andnot exists (select *from选课where学生 .学生号 = 选课. 学生号and y. 课程号 = 选课 . 课程号)解 : 从教学库中查询出选修了姓名为a 的学生的全部选课的所有学生。三、根据教材第四章所给的商品库和教学库,按照下列所给的每种功能写出相应的查询语句。1 从商品库中查询出数量大于 10 的商品种数。解 :select count(*)from商品表 1where数量 >102 从商品库中查询出每类(即分类名相同)商品的最高单价。解 :select 分类名 ,max( 单价 ) as 最高单价from商品表 1g

17、roup by分类名3 从商品库中查询出每类(即分类名相同)商品的总数量。解 :select 分类名 ,sum( 数量 ) as 总数量from 商品表 1group by分类名4 从商品库中查询出比所有电视机的单价都高的每种商品。解 :select *from商品表 1where单价 >all(select单价from商品表 1where分类名 =' 电视机 ')5 从商品库中查询出同一产地的商品只有一种的所有商品。解 :select 商品表 1.*, 产地from商品表 1, 商品表 2where商品表 1. 商品代号=商品表2. 商品 代 号 and 产 地 in(

18、select 产地from商品表 1 x, 商品表 2ywherex. 商品代号 =y. 商品代号groupby 产地 havingcount(*)=1)6从教学库中查询出至少有两名学生所选修的全部课程。解: select distinct x.*from课程 x, 选课 y, 选课zwherey. 课程号 =z. 课程号 and y. 学生号 <>z. 学生号andx. 课程号 =y. 课程号7从教学库中查询出每门课程被选修的学生人数, 并按所选人数的升序排列出课程号、课程名和选课人数。解 : select 课 程 . 课 程 号 , 课 程名,count( 课程 .课程号 )

19、as 人数from课程 ,选课where课程 .课程号 = 选课 .课程号group by课程 . 课程号 , 课程名order by人数三、根据下面所给的AAA数据库,写出下列每条查询语句的执行结果,或者写出下列每条语句或程序段的功能。假设存在名为AAA 的数据库,包括Students(学号char(8),姓名varchar(8),年龄int ,专业varchar(20) , 入 学 日 期 DateTime )和 Score (学号 char(8) ,课程名 varchar(10), 成绩numeric(5,2))两张表。1.SELECTFLOOR(888.33),FLOOE(-888.3

20、3)解: 888 -8892.select' 学生号 ',' 课程号',isnull(cast(null as char(6),'无成绩')解: 学生号课程号无成绩3.select' 学生号 ',' 课程号',isnull(cast(0 as char(6),'无成绩 ')解: 学生号课程号0四、根据下面所给的AAA数据库,按照下列每种功能写出相应的Transact-SQL语句或程序段。假设使用名称为 AAA 的数据库,它包括 Students (学号 char(8) ,姓名varchar(8),年

21、龄int ,专业varchar(20) , 入 学 日 期 DateTime )和 Score (学号 char(8) ,课程名varchar(10),成绩numeric(5,2))两张表。1. 显示出该 Score 表中的全部数据,并要求当成绩为空时显示数值-1 。解 : select 学号 , 课程名 ,isnull( 成绩 ,-1)from Score2. 显示出当前日期中的年份和月份数据。解: selectyear(getdate(),month(getdate()3. 显示出 Students 表中所有学生记录的学号列的前四个字符。解 : select left(学号 ,4)fron

22、 Students4. 显示出一个整数 25 和当前日期 getdate() 的值分别占用的字节数。解: selectdatalength(25),datalength(getdate ()三、写出下列每条查询语句的执行结果,或者写出下列每条语句或程序段的功能。假设存在名为 AAA 的数据库,包括 Students (学号 char(8) ,姓名varchar(8),年龄int ,专业varchar(20) , 入 学 日 期 DateTime )和 Score (学号 char(8) ,课程名 varchar(10), 成绩numeric(5,2))两张表。1. declare a nume

23、ric(5,2)set a=(select avg(成绩 )from score)select *from scorewhere成绩 >=a解 : 从 score 表中查询出大于等于平均成绩的所有记录。2. declare a char(6)set a='刘亮 'if(exists(select*fromstudents where姓名 =a)print '姓名为 '+a+'的同学存在! 'elseprint '姓名为 '+a+'的同学不存在! '解 : 从 students 表中查询姓名为 a 的值的同学是

24、否存在,根据不同情况显示出相应信息。3. select year(入学日期 ) as入学年份 ,count(*) as人数from studentsgroup by year(入学日期 )解 : 从 students 表中分组统计出每个年份入学的学生人数。4.selectday( 入学日期 ) as入学日号 ,count(*) as人数from studentsgroup by day(入学日期 )解 : 从students表中分组统计出每个日号入学的学生人数。5.create procedure xxk2asbeginselect x.学号 ,x. 姓名 ,x. 专业,count(*) as

25、门数from students x,score ywhere x.学号 =y. 学号groupbyx. 学号 ,x. 姓名,x. 专业end解 : 显示出 AAA 库中每个学生的学号、姓名、专业等信息及选课门数6.create procedure xxk4(achar(8),bvarchar(10),c numeric(5,2)asbeginupdate scoreset成绩 =cwhere学号 =a and课程名 =bend解 : 修改 score 表中学号为 a 的值、课程名为 b 的值的学生的成绩为c 的值。7.create procedure xxk6(achar(8),bvarcha

26、r(10)asbegindelete from scorewhere学号 =a and课程名 =bend解 : 从 score 表中删除学号为 a 的值、课程名为 b 的值的学生成绩记录。8.declare a char(8),b varchar(10),c numeric(5,2)declare xxx cursorfor select学号 , 课程名 , 成绩from scoreopen xxxfetch xxx into a,b,c while fetch_status=0beginprinta+replicate('',3)+b+str(c)+replicate('',3)+(case

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论