第一篇:数据库试题及答案
一、填空
1.数据模型分为(层次模型)和(网状模型)、(关系模型)。2.数据库系统(DBS)是一个由(外模式)、(模式)、(内模式)组成的多级系统结构。3.数据库管理系统提供了4个方面的数据控制功能:(数据定义)、数据操作、(数据库管理)和(数据库建立和维护以及通信)。4.属性的取值范围称作属性的(值域)。5.E-R图是由(实体)、(属性)和(联系)这3个基本要素组成的。
6.Windows身份验证是指(系统用户
/Windows合法用户)身份登录SQL Server.7.SQL中的语句可分为数据查询语言、数据定义语言、(数据操纵语言)和(数据控制语言)四类。
8.SQL Server2000引入了3种新的数据类型(Bigint类型)、(Sql_Variant类型)和(Table类型)。
9.tempdb数据库保存所有的临时表和临时(存储过程)。10.数据文件是存放数据和数据库对象的文件。一个数据库可以有(一个或多个)数据文件,每个数据文件只属于一个数据库。
11.当一个数据文件有多个数据文件时,其中一个文件被定义为主数据文件,扩展名为(.MDF),用来存储数据库的启动信息和部分或全部数据。其他数据文件被称为次数据文件,扩展名为(.NDF),用来存储主数据文件没有存储的其他数据。
12.事物日志文件时用来记录数据库更新信息的文件。事物日志文件最小为512KB,扩展名为(.LDF)。每个数据库可以有(一个或多个)事物日志文件。
13.master数据库记录SQL Server系统的所有(系统)信息,如SQL Server的初始化信息、所有的登录账户和系统配置设置等。
14.整数型的int型数的范围为(-2^31-2^31-1),整数型的tinyint型数的范围为(0~255)。
15.表中某列为变长字符数据类型varchar(100),其中100表示(字符最大长度)。加入输的字符串为gtym13e5,存储的字符长度为(8)字节。
16.SQL Server2000的datetime 和smalldatetime数据类型主要用来存储(日期)和(时间)的组合数据。
17.自动的“标识”属性用于定义字段是否可(自动生成下一个标识值)。
18.在关系图中,关系连线的终点图标代表了关系的类型,如果关系连线两端都为钥匙图标,则该关系为(1:1)。如果关系连线一端为钥匙图标,另一端为无穷大图标,则该关系为(1:n)。
19.可使用(select)或(print)命令来显示函数结果。20.如果要使用SELECT语句返回指定条数的记录,则应使用(top)关键字来限定输出字段。21.连接查询可分为三种类型:(内连接查询)(外连接查询)和交叉连接。22.内连接查询可分为(等值连接)、不等值连接和(自然连接)三种类型。23.若要把查询结果存放到一个新建的表中,可使用(into)子句。
24.在一个全文目录中可以储存(一个或多个)全文索引,但在一个表中只能建立(一个)全文索引。
25.数据库中只存放视图的(定义),而不存放视图对应的数据,这些数据仍存放在导出视图的基础表中。26.通常可以使用(GO)命令来标识Transact-SQL批处理的结束。
27.判断使用FETCH语句读取数据是否成功的全局变量为(@@fetch_status)。28.使用游标对基本表进行修改和删除操作的语句中,WHERE选项的格式为“WHERE(CURRENT)OF({{[GLOBAL]cursor_name}|cursor_variable_name})”。
29.在定义储存过程中,若有输入参数则应放在关键字AS的(后面)说明,若有局部变量则应放在关键字AS的(前面)定义。
30.每个存储过程向调用方返回一个整数返回代码。如果存储过程没有显示设置返回代码的值,则应返回代码为(0),表示成功。
31.向表中添加记录后,添加的记录临时存储在(inserted)表中;删除表中记录后,被删除的记录临时存储在(deleted)表中;修改表中记录后,被修改的记录临时存储在(inserted)表中。32.在 SQL Server2000中,数据库的安全机制包括(登陆账号)管理、数据库用户管理、(角色)管理、权限管理等内容。
33.SQL Server2000有三种权限,分别是(对象权限)、语句权限、(隐含权限)。34.数据库备份常用的两类方法是(使用向导)备份和(企业管理器)备份。
35.四种数据库备份方式分别是(完全)备份、差异备份、(事务日志)备份、文件或文件组备份。
36.SQL Server2000数据复制由发布服务器、分发服务器、(订阅)服务器构成。
37.CHECK约束表示(具有检查约束列)的输入内容必须满足约束条件,否则数据无法正常输入。
38.实体完整性又称为(行)完整性,要求表中有一个主键。
39.参照完整性又称为(引用)完整性,它是通过定义外键与主键之间或外键与唯一键之间的对应关系实现的。
二、选择
1.(A)是位于用户和操作系统之间的一层数据管理软件。数据库在建立、使用和维护时由其统一管理、统一控制。
A.DBMS
B.DB
C.DBS
D.DBA 2.在数据库系统的三级模式结构中,用来描述数据的全局逻辑结构的是(C)。A.子模式
B.用户模式
C.模式
D.存储模式 3.下列选项中,不属于数据库特点的是(C)。
A.数据共享
B.数据完整性
C.数据冗余很高
D.数据独立性高 4.要保证数据库逻辑数据独立性,需要修改的是(c)。
A.模式
B.模式与内模式的映射
C.模式与外模式的映射
D.内模式 5.在关系数据库中,视图是三级模式结构中的(D)。A.内模式
B.模式
C.存储模式
D.外模式
6.在数据库中可以创建和删除表、视图、索引,可以修改表,这是因为DBMS提供了(C)。A.数据定义功能
B.数据查询功能
C.数据操作功能
D.数据控制功能
7.数据库DB、数据库系统DBS、数据库管理系统DBMS三者之间的关系是(A)。A.DBS包括DB和DBMS
B.DBMS包括DB和DBS
C.DB 包括DBS和DBMS
D.DBS包括DB,也就是DBMS 8.数据库系统的数据独立性体系在(B)。A.不会因为数据的变化而影响到应用程序
B.不会因为系统数据存储结构与数据逻辑结构的变化而影响应用程序 C.不会因为存储策略的变化而影响存储结构
D.不会因为某些存储结构的变化而影响其他存储结构 9.E-R图用于描述数据库的(A)。
A.概念模型
B.数据模型
C.存储模式
D.外模式
10.对于现实世界中事物的特征,在实体—联系模型中使用(A)A.属性描述
B.关键字描述
C.二维表格描述
D.实体描述
10.参照完整性规则:表的(B)必须是另一个表主键的有效值,或者是空值。A.候选键
B.外键
C.主键
D.主属性
11.在关系模式中,实现“关系中不允许出现相同的元组”的约束是(B)约束。A.候选键
B.主键
C.键
D.超键
12.约束“年龄限制在18~30岁之间”属于DBMS的(B)功能。A.安全性
B.完整性
C.并发控制
D.恢复
13.反映现实世界中实体及实体间联系的信息模式是(D)。A.关系模型
B.层次模型
C.网状模型
D.E-R模型
14.学生社团可以接纳多名学生参加,但每个学生只能参加一个社团,从社团到学生之间的联系类型是(D)。
A.多对多
B.一对一
C.多对一
D.一对多
15.关系模型中有三类完整性约束:实体完整性、参照完整性和域完整性。定义外部关键字实现的是哪一类完整性(C)
A.实体完整性
B.域完整性
C.参照完整性
D.实体完整性、参照完整性和域完整性 16.关系模型的候选关键字可以有1个或多个,而主关键字有(C)。A.多个
B.0个
C.1个
D.1个或多个
17.在关系模型中,为了实现“关系中不允许出现相同元组”的约束应使用(B)。A.临时关键字
B.主关键字
C.外部关键字
D.索引关键字
18.设有部门和职员两个实体,每个职员只能属于一个部门,一个部门可以有多名职员,则部门与职员实体之间的联系类型是(B)。A.m:n
B.1:m
C.m:k
D.1:1 19.已知关系模式R(A,B,C,D,E)及其上的函数相关性 集合F={A→D, B→C, E→A},该关系模式的候选关键字是(B)。
A.AB
B.BE
C.CD
D.DE 20.设学生关系S(SNO,SNAME,SSEX,SAGE,SDPART)的主关键字为SNO,学生选课关系SC(SNO,CNO,SCORE)的关键字为SNO和CNO,则关系R(SNO,CNO,SSEX,SAGE,SDPART,SCORE)的主关键字为SNO何CNO,其满足(A)。A, 1NF
B,2NF
C,3NF
D,BCNF 21.下列叙述正确的是(D)
A.在企业管理器中可停止SQL Server服务 B..在企业管理器中可暂停SQL Server服务 C..在企业管理器中可启动SQL Server服务 D.以上选项都正确
22.下面叙述正确的是(D)
A.SQL Server服务管理器关闭服务也自动关闭
B.职员启动SQL Server服务,本地服务器的管理任务即可自动执行 C.启动Microsoft Serch服务后才可使用SQL Server全文检索功能 D.以上选项都正确 23.SQL Server2000属于(C)数据库系统。
A.层次模型
B.网状模型
C.关系模型
D.面向对象模型 24.SQL 语言通常称为(A)。
A.结构化查询语言
B.结构化控制语言
C.结构化定义语言
D.结构化操纵语言 24.SQL是哪几个英文单词的缩写(B)
A.Standard Query Language
B.Structured Query Language C.Select Query Language D.以上选项都不是
25.SQL语言的数据操纵语句包括SELECT、INSERT、UPDATE、DELETE等,其中最重要的使用最频繁的是(A)
A.SELECT B.INSERT C.UPDATE
D.DELETE 26.下列SQL语句中,(D)不是数据定义语句。
A.CREATE TABLE B.DROP VIEW C.CREATE VIEW D.GRANT 27.数据库备份的作用是(C)
A.保障安全性
B.一致性控制
C.故障后的恢复
D.数据的转存 28.事物日志用于保存(C)
A.程序运行过程
B.程序的执行结果 C.对数据的更新操做
D.数据操作
29.以下关于使用文件组的叙述中,不正确的是(A)A.文件或文件组可以由一个以上的数据库使用 B.文件只能是一个文件组的成员
C.数据和事务日志信息不能属于同一文件或文件组 D.事务日志文件不能属于任何文件组
30.SQL Server把数据及相关信息用多个逻辑组件来表示,这些逻辑组件通常被称为数据库对象。以下(D)不属于数据库对象
A.表
B.视图
C.索引
D.备份
31.安装SQL Server后,数据库服务器已经自动建立4个系统数据库,以下(B)不是系统数据库。
A.master数据库
B.pubs数据库 C.model数据库
D.msdb数据库
32.以下关于数据库model的叙述中,正确的是(C)A.model数据库是SQL Server示例数据库
B.model数据库用于保存所有的临时表和临时存储过程 C.model数据库用作在系统上创建的所有数据库的模板
D.model数据库用于记录SQL Server系统的所有系统级别信息 33.以下关于关联的叙述正确的是(C)
A.可在两个表的不同数据类型的字段间创建关联 B.可在两个表的不同数据类型的同名字段间创建关联
C.可在两个表的相同数据类型的不同名称的字段间创建关联
D.在创建关联时选择了级联更新相关的字段,则外键表中的字段值变化时,可自动修改主键表中的关联字段
34.若要删除数据库中已经存在的表S,可用(C)A.DELETE TABLE S
B.DELETE S C.DROP TABLE S
D.DROP S 35.设关系数据库中的一个表S的结构为S(SN,CN,grade),其中SN为学生名,CN为课程名,二者均为字符型; grade为成绩,数值型,取值范围0~100。若要把“张二的化学成绩80分”插入S中,则可以用(D)A.ADD INTO S VALUES(‘张二’,‘化学’,‘80’)B.INSERT INTO S VALUES(‘张二’,‘化学’,‘80’)C.ADD INTO S VALUES(‘张二’,‘化学’,80)D.INSERT INTO S VALUES(‘张二’,‘化学’,80)36.设关系数据库中的一个表S的结构为:S(SN,CN,grade),其中SN为学生名,CN为课程名,二者均为字符型; grade为成绩,数值型,取值范围0~100。若要更正王二的化学成绩为85分,则可用(A)
A.UPDATE S SET grade=85 WHERE SN=’王二’AND CN=’化学’ B.UPDATE S SET grade=’85’ WHERE SN=’王二’AND CN=’化学’ C.UPDATE grade=85 WHERE SN=’王二’AND CN=’化学’ D.UPDATE grade=’85’ WHERE SN=’王二’AND CN=’化学’
37.设A.B两个表的记录数分别为3和4,对两个表执行交叉联接查询,查询结果中最多可获得(C)条记录。
A.3
B.4
C.12
D.81 38.关于查询语句的SELECT子句为SELECT A,B,C *D,则不能使用的GROUP B子句是(D)A.GROUP BY A
B.GROUP BY A,B
C.GROUP BY A,B,C *D
D.GROUP BY A,B,C D
39.查询每门课程的最高分,要求得到的信息包括课程名称和分数,正确的命令是(B)A.SELECT 课程名称,SUM(分数)AS分数
FROM curriculum, grade WHERE curriculum.课程编号= grade.课程编号
GROUP BY课程名称
B.SELECT 课程名称,MAX(分数)分数
FROM curriculum, grade WHERE curriculum.课程编号= grade.课程编号
GROUP BY课程名称
C.SELECT 课程名称,SUM(分数)分数
FROM curriculum, grade WHERE curriculum.课程编号= grade.课程编号
GROUP BY curriculum.课程名称
D.SELECT 课程名称,MAX(分数)AS分数
FROM curriculum, grade WHERE curriculum.课程编号= grade.课程编号
GROUP BY curriculum.课程名称
40.下列关于查询结果错误的是(D)A.查询结果可以显示在表格中 B.查询结果可以按文本方式显示
C.以文本和表格显示的查询结果在保存时,其文件格式不同 D.不管以哪种方式查看,查询结果都会显示在查询结果窗口中 41.下列关于INSERT语句使用正确的是(D)A.可以在INSERT语句的VALUES指定计算列的值 B可以使用INSERT语句插入一个空记录 C.如果没有为列指定数据,则列值为空值
D.如果列设置了默认值,则可以不为该列提供数据 42.下列关于UPDATE语句错误的是(D)A.可以使用DEFAULT关键字将列设置为默认值 B.可以使用NULL关键字将列设置为空值 C.可以使用UPDATE语句同时修改多个记录
D.若UPDATE语句中没有指定搜索条件,则默认只能修改第一条记录 43.有SQL语句:
SELECT部门.部门名,COUNT(*)AS部门人数 FROM 部门,职工
WHERE 部门.部门号=职工.部门号 GROUP BY 部门.部门名
与该语句等价的语句是(C)
A.SELECT部门.部门名,COUNT(*)AS部门人数
FROM职工INNER JOIN部门 部门.部门号=职工.部门号 GROUP BY 部门.部门名
B.SELECT部门.部门名,COUNT(*)AS部门人数 FROM职工INNER JOIN部门ON部门号 GROUP BY 部门.部门名
C.SELECT部门.部门名,COUNT(*)AS部门人数
FROM职工INNER JOIN部门ON部门.部门号=职工.部门号 GROUP BY 部门.部门名
D.SELECT部门.部门名,COUNT(*)AS部门人数
FROM职工INNER JOIN部门ON部门.部门号=职工.部门号 44.在视图上不能完成的操作是(C)
A.更新视图B.查询 C.在视图上定义新的表 D.在视图上定义新的视图 45.建立索引的最优之一是(C)
A.节省存储空B.便于管理C.提高查询速度 D.提高查询和更新的速度 46.索引是对数据库表中(C)字段的值进行排序。A一个B 多个C 一个或多个D零个 47.参照完整性要求有关联的两个或两个以上表之间数据的一致性。参照完整性可以通过建立()来实现。
A主键约束和唯一约束B 主键约束和外键约束C 唯一约束和外键约束D以上都不是
48.域完整性用于保证给定字段中数据的有效性,它要求表中指定列的数据具有正确的数据类型、格式和有效的(C)。
A数据值B 数据长度C 数据范围D 以上都不是
49.在studentsdb数据库的student_info表录入数据时,常常需要一遍又一遍的输入“男”到学生“性别”列,以下(A)种方法可以解决这个问题? A创建一个DEFSULT约束(或默认值)B创建一个CHECK约束 C创建一个UNIQUE约束(或唯一值)D创建一个PRIMARY KEY约束(或主键)
50.在SQL Server中有6种约束,以下(D)不属于该6种约束。A主键约束B 外键约束C 唯一性约束D关联约束
51.SQL Server提供的单行注释语句是使用(B)开始的一行内容。A“/*”B“--”C“{”D“/”
52.下列标识符可以作为局部变量使用的是(C)。A【@Myvar】B My var C@ Myvar D @My var 53.不属于SQL Server2000系统全局变量的是(D)。A@@ErrorB@@ConnectionsC@@Fetch_StatusD@Records 54.字符串常量使用(A)作为定界符。A单引号B双引号C方括号D花括号
55.表达式Datepart(yy,’2004-3-13’)+2的结果是(D)A.’2004-3-15’
B.2004 C.’2006’ D.2006
56.SQL Server 2000使用Transact-SQL语句(D)来声明游标。
A.CREATE CURSOR
B.ALTER CURSOR
C.SET CURSOR D.DECLARE CURSOR 57.SQL Server 2000触发器主要针对下列语句创建(B)A.SELECT、INSERT、DELETE B.INSERT、UPDATE、DELETE C.SELECT、UPDATE、INSERT
D.INSERT、UPDATE、CREATE 58.属于实物控制的语句是(A)A.BEGIN TRAN、COMMIT、ROLLBACK B.BEGIN、CONTINUE、END C.CREATE TRAN、COMMIT、ROLLBACK D.CREATE TRAN、CONTINUE、END 59.一个事务的执行,要么全部完成,要么全部不做,一个事务中队数据库的所有操作都是一个不可分割的操作序列的属性是(A)A.原子性
B.一致性
C.隔离性
D.持久性
60.Transact-SQL语言中的COMMIT语句的主要作用是(C)A.结束程序
B.返回系统
C.提交事务 D.存储数据
61.Transact-SQL语言中用(B)语句实现事物的回滚。
A.CREATE TABLE
B ROLLBACK C GRANT和REVOKE D COMMIT 62.为了防止一个用户的工作不适当地影响另一个用户,应该采取(D)。A 完整性控制 B 访问控制
C 安全性控制
D 并发控制 63.如果事物T获得了数据项Q上的排他锁,则T对Q(D)。
A 只能读不能写B 只能写不能读C既可读又可写D 不能读也不能写 64.以下哪项不是SQL Server导入导出时要选择传输的数据来源(D)。A 从源数据库 复制表和视图 B用一条查询指定要传输的数据 C从备份的数据文件中
D在SQL Server数据库之间复制对象和数据 65.以下哪项不是复制技术的优点(B)A可在多个站点保存多个数据副本 B不能分离出要浏览的数据
C允许更大的独立性。用户可以在连接断开的情况下继续使用数据的副本,然后在连接恢复时将对数据库所作的更改传播到其他数据库
D分离出要浏览的数据,如使用基于Web的应用程序浏览数据
三、程序填空
1.以下程序显示26个小写英文字母,完成该程序。
DECLARE@count int SET____@COUNT=0_____ WHILE @count<26 BEGIN PRINT CHAR(ASCII(‘a’)+_____+@COUNT_______)SET @count=@count+1 END 2.以下程序用游标gd_cur查找studentsdb数据库的grade表,统计并显示表中记录总数,最后删除游标gd_cur,完成程序。
DECLARE@sid char(8),@cid varchar(10),@scr numeric(5,2)DECLARE@ count int SET @ count=0 DECLARE gd_cur_____cursor________ FOR SELECT学号,课程编号,分数FROM grade OPEN gd_cur FETCH FROM gd_curINTO@sid,@cid,@scr WHILE______@@fetch_status=0_______ BEGIN SET @count =@count+1 FETCH FROMgd_curINTO@sid,@cid,@scr End CLOSE gd_cur Deallocate dg_cur PRINT@count 3.下列题目中的代码应用于数据库studentsdb.CREATE PROCEDURE st_ag AS BEGIN SELECT学号,avg(分数)AS平均成绩 FROM grade GROUP BY学号 END 该程序完成的功能是:_____创建存储过程 从表grade中返回每个学号对应的平均成绩___________ 4.以下代码创建和执行存储过程proc_grade,查询studentsdb数据库的grade表中课程编号为“0002”的学号、分数信息,并使存储过程不能使用sp_helptext查看,完成以下程序并执行存储过程proc_score.CREATE PROC proc_ grade---创建存储过程proc_grade WITH__ENORYPTION______ AS SELECT学号,分数 FEOM grade WHERE课程编号=_‘0002’__________ 执行存储过程proc_score: EXEC_______PROC——SCORE____
四、简答
1.SQL Server2000企业版提供了哪几个服务?每个服务的作用是什么?
答:SQL Server服务:接受所有来自客户端的Transact-SQL语句或者图形化管理工具发出的对数据库的访问请求,提供对实例数据库的访问操作,由SQL Server数据库引擎组件完成。
SQL Server Agent服务:SQL Server代理程序允许在SQL Server 2000上调度定期执行的活动,并通知系统管理员,报告服务器所发生的问题。
Distributed Transaction Coordinator服务:允许客户端应用程序在一个事务中对分布在多个服务器上的数据源进行操作。
Microsift Search 服务:具有索引和查询两项功能
2.SQL Server2000提供了几个版本?每个版本分别适用于哪些操作系统? 4个版本:企业版,标准版,个人版,开发板 各自所支持的系统版本详见于P44 3.“Windows身份验证模式”和“混合模式”的区别是什么?
用户通过Windows用户账号验证,即可连接到SQL Server而不再进行身份验证。在混合模式下,两种模式都可用,在SQL Server模式下,用户连接时,需要提供登录名和登录密码。
4.登记日志文件时为什么必须先写日志文件,后写数据库?
把对数据的修改写到数据库中和把表示这个修改的日志记录写到日志文件中是两个不同的操作。有可能在这两个操作之间发生故障,即这两个写操作只完成了一个。如果先写了数据库修改,而在运行记录中没有登记这个修改,则以后就无法恢复这个修改了。如果先写日志,但没有修改数据库,按日志文件恢复时只不过是多执行一次不必要的撤销(UNDO)操作,并不会影响数据库的正确性。所以为了安全,一定要先写日志文件,即首先把日志记录写到日志文件中,然后写数据库的修改。这就是“先写日志文件”的原则。5.数据文件与日志文件的作用分别是什么? 数据文件:存放数据和数据库对象的文件。
日志文件:记录数据库更新信息,这些更新信息可以用来恢复数据库
第二篇:数据库试题及答案_
笔试样卷一
参考答案
一、简答题(25分)
1.数据库阶段数据管理的主要特点是什么? 2.
解释DB、DBMS、DBS三个概念?
3.什么是物理数据独立性和逻辑数据独立性? 4.
试说明DBMS的主要功能?
5.在ER模型转换为关系模型时,联系类型要根据不同的情况作不同的处理,试说明之。
二、计算题(20分)
1.设有关系R和S R: S:
A B C A B C 3 6 7 3 4 5 2 5 7 7 2 3 7 3 4 4 4 3 列表计算R∪S、R-S、R×S、π3,2(S)、δB<5(R)。(5分)2.
设有三个关系
S(SNO, SNAME, AGE, SEX, SDEPT)SC(SNO, CNO, GRANDE)C(CNO, CNAME, CDEPT, TNAME)试用关系代数表达式表示下列查询
(1)检索LIU老师所授课程的课程号、课程名(2)检索年龄大于23岁的男学生的学号和姓名
(3)检索学号为S3的学生所学课程的课程名和认课教师姓名(4)检索WANG同学不学的课程的课程号
(5)检索至少选修了两门课程的学生的学号(10分)
三、设有三个基本表(45分)
S(SNO, SNAME, AGE, SEX, SDEPT)SC(SNO, CNO, GRANDE)C(CNO, CNAME, CDEPT, TNAME)1.
试用T-SQL的查询语句表达下列查询(1)检索LIU老师所授课程的课程号、课程名(2)检索年龄大于23岁的男学生的学号和姓名
(3)检索学号为S3的学生所学课程的课程名和认课教师姓名(4)检索WANG同学不学的课程的课程号
(5)检索至少选修了两门课程的学生的学号(10分)2.
试用T-SQL的查询语句表达下列查询(1)统计有学生选修的课程的门数(2)求选修C4课程的学生的年龄
(3)求LIU老师所授课程的每门课程的学生的平均成绩(4)统计每门课程的学生选修人数
(5)求年龄大于所有女同学年龄的男学生的姓名和年龄(10分)3.
试用T-SQL更新语句完成下列更新操作
(1)往表S中插入一个学生资料(‘S9’, ‘WU’, 18)
(2)在表S中检索每一门课程成绩都大于等于80分的学生的学号、姓名、性别,把检索结果插入另一个已存在的表STU(SNO, SNAME, SEX)(3)删除SC表中WANG同学的选课资料(4)把低于总平均分的女同学的成绩提高5%(5)把表SC中C4课程的成绩提高5%(10分)
四、设有关系模式R(ABCD),R上的FD集F={ AB→CD, A→D},试说明R不是2NF的理由,并把R分解成2NF模式集。(10分)
数据库应用笔试样卷一参考答案
一、简答题(25分)
1.采用数据模型表示复杂的数据结构;有较高的数据独立性;为用户提供了方便的用户接口;提供数据控制功能;增加了系统的灵活性。
2.DB(数据库):存储在计算机内有组织的、统一管理的相关数据的集合。DBMS(数据库管理系统):是位于用户与操作系统之间的数据管理软件。
DBS(数据库系统):是实现有组织的、动态的存储大量关联数据,以方便用户访问的计算机硬件、软件和株距资源组成的计算机系统。
3.物理数据独立性:内模式的修改,只需对模式/内模式映象做相应修改,而不需修改概念模式。逻辑数据独立性:概念模式的修改,只需对外模式/模式映象做相应修改,而不需修改外模式。4.DBMS的主要功能:
数据定义(DDL):三级结构、两级映象、完整性约束等。数据操纵(DML):检索、更新。
数据保护:数据恢复、并发控制、完整性控制、安全性控制等。数据维护:数据载入、转换、存储、、性能监控等。
数据字典(DD):存储三级结构定义的数据库称为DD,即系统数据库。5.实体:实体类型→关系模式。联系:
1∶1:将联系臵入任一端实体,并加入另一端实体主键为外键。1∶N:将联系臵入多端实体,并加入一端实体主键为外键。M∶N:建立新关系模式,主键为两端实体的主键,并为外键。
二、计算题(20分)1.R∪S: A B C 3 6 7 2 5 7 7 3 4 4 4 3 4 5 7 2 3 R-S: A B C 3 6 7 2 5 7 7 3 4 4 4 3 R×S
A B C π3,2(S): C B 5 3 4 2 δB<5(R): A B C 7 3 4 4 4 3 2.(1)∏cno,cname(σTNAME=’ LIU’(C))(2)∏sno,sname(σage=23 ∧sex=’ 男’(S))(3)∏cname,tname(σsno=’s3’(S)∞SC∞C)(4)∏cno(C)-∏cno(σsname=’WANG’(SC∞S))(5)∏sno(σ1=4∧2<>5(SCXSC))
三、(45分)1.(1)SELECT CNO,CNAME FROM C WHERE TNAME=’ LIU’
(2)SELECT SNO,SNAME FROM S WHERE AGE>23 AND sex=’ 男’(3)SELECT C.CNO, TNAME FROM S,SC,C WHERE SNO=’S3’ AND C.CNO=SC.CNO=’c03’ AND S.SNO=SC.SNO(4)select cno from c where not exists(select cno from sc where c.cno=sc.cno and sname='WANG')(5)select sc1.sno from sc as sc1,sc as sc2 where sc1.sno=sc2.sno and sc1.cno<>sc2.cno 2.(1)select ,count(*)as num from sc group by cno(2)SELECT SNO,AGE FROM S,SC WHERE S.SNO=SC.SNO AND CNO=’C4’
(3)select cno, avg(score)from c,sc WHERE TNAME=’ LIU’ AND C.CNO=SC.CNO group by cno(4)select cno,count(*)from sc(5)select sname,age from s where SEX='男' and age>all(select age from s where sex='女')3.(1)INSERT INTO S(sno, sname, age)VALUE(‘S9’, ‘WU’, 18)
(2)select sno,sname,.seg into stu from s where score>=80 and s.sno=sc.sno(3)delete from sc where sc.sno=(select sno from s where sname=’wang’ and s.sno=sc.sno)
(4)update sc set score=score*(1+0.05)from s,sc where sex=’ 女’ and s.sno=sc.sno and score<(select avg(score)from sc)(5)update sc set score=score*(1+0.05)from where cno=’c4’
四、(10分)
设有关系模式R(ABCD),R上的FD集F={ AB→CD, A→D},试说明R不是2NF的理由,并把R分解成2NF模式集。(10分)
1、侯选键为AB
2、由AB→CD 可知AB→C,AB→D 又由于A→D
故D局部依赖于侯选键AB 所以R不是2NF
3、R1(AB,C)R2(A,D)
笔试样卷二
参考答案
一、选择题(10X2=20分)
1.数据完整性不包括
a)主体完整性 b)实体完整性 c)参照完整性 d)自定义完整性 2.
常用的三种结构数据模型不包括
a)关系模型 b)实体联系模型 c)层次模型 d)网状模型
3.关系的集合运算不包括
a)交 b)并 c)和 d)差 4.
关系的专门关系运算不包括
a)选择 b)投影 c)连接 d)积 5.
事务的属性包括
a)原子性、安全性、隔离性、持久性 b)原子性、一致性、安全性、持久性
c)原子性、一致性、隔离性、安全性 d)原子性、一致性、隔离性、持久性
6.SQL Server系统数据库不包括
a)master b)tempdb c)student d)model 7.
SQL Server中,数据库主数据文件扩展名为
a)ldf b)mdf c)ndf d)dbf 8.
SQL Server中,索引类型包括
a)聚集索引和非聚集索引 b)主索引和次索引 c)单索引和复合索引 d)内索引和外索引 9.
SQL的数据操纵命令是
a)select、insert、delete、update b)create、select、insert、delete c)create、insert、delete、update d)select、insert、delete、alter 10.SQL Server系统的触发器包括
a)select、insert、delete b)insert、delete、update c)select、insert、update d)select、delete、update
二、填空题(10X2=20分)
1.数据管理经历了、、三个阶段。2.
DB的中文含义是、DBMS的中文含义是、DBS的中文含义是、DBA的中文含义是。3.
数据库的三级体系结构为、、,两级映象为、,两级数据独立性为、。4.
SQL主要由、、三类语句组成。5.
数据库设计通常由规划、需求分析、、、、数据库实现、数据库运行与维护7个阶段构成。
三、应用题(3X5=15分)
设关系模式R,其中U={A,B,C,D},F={AB→C,C→A,C→D,D→B},试问:
1.关系R各属性的闭包。2.
关系R的所有候选码。
3.判断关系R是否属于3NF,并解释你的结论。
四、综合题(45分)
某学校要对学生成绩进行计算机管理。该学校有若干学生,每个学生有学号、班级、姓名、性别、出生日期、地址。开设的课程需要管理课程编号、课程名称、学分和学生选修该课程后的成绩等信息。该学校规定:一个学生可以有选修多门课程,一门课程可以有多名学生选修。
1.画出此管理系统的ER模型。
2.简述ER模型向关系模式转换的一般方法。3.
将以上ER模型转化为关系模式,包括主键、外键。4.
试用SQL语句表示以下数据编辑:
①
将新生“张三”插入学生表(其它属性自设)。②
删除选课表中学号为“0001”的学生的选课信息。③
将所有选修了课程编号为“c001”的学生成绩加5分。④
将所有选修了“数据库”课程的学生成绩提高5分。⑤
把低于总平均分的女同学的成绩提高5%。5.
试用代数表达式表示以下查询:
①
查询全校所有学生的学生表的所有信息。
②
查询全校所有地址为“西安”的学生的学号、姓名、性别。③
查询所有选修了“数据库”课程的学生的学号、姓名、成绩。④
查询选修了所有课程的学生的学号、姓名、性别。⑤
查询选修了2门课程以上的学生的学号、姓名、性别。⑥
查询学号为“0001”的学生没有选修的课程编号、课程名称。6.
试用SQL语句表示以下查询:
①
查询全校所有学生的学生表的所有信息。
②
查询全校所有地址为“西安”的学生的学号、姓名、性别。③
查询所有选修了“数据库”课程的学生的学号、姓名、成绩。④
查询每个学生所选课程的数量、总分、最高、最低分 ⑤
查询选修了所有课程的学生的学号、姓名、性别。⑥
查询选修了2门课程以上的学生的学号、姓名、性别。
数据库应用笔试样卷二参考答案
一、选择题(10X2=20分)
1.a)2.b)3.c)
4.d)5.d)6.c)7.b)8.a)9.a)10.b)
二、填空题(10X2=20分)
11.人工管理阶段、文件系统阶段、数据库阶段三个阶段。12.数据库、数据库管理系统、数据库系统、数据库管理员。
13.数据库的三级体系结构为外模式、概念模式、内模式,两级映象为外模式/模式映象、模式/内模式映象,两级数据独立性为物理数据独立性、逻辑数据独立性。14.SQL主要由 数据定义、数据操纵、数据控制三类语句组成。
15.数据库设计通常由规划、需求分析、概念设计、逻辑设计、物理设计、数据库实现、数据库运行与维护7个阶段构成。
三、应用题(3X5=15分)
16.A+=A,B+=B,C+=ABCD,D+=DB,(AB)+= ABCD 17.关系R的所有候选码。AB及C 18.关系R不属于3NF。
因为非候选码传递依赖于侯选键AB
四、综合题(45分)
某学校要对学生成绩进行计算机管理。该学校有若干学生,每个学生有学号、班级、姓名、性别、出生日期、地址。开设的课程需要管理课程编号、课程名称、学分和学生选修该课程后的成绩等信息。该学校规定:一个学生可以有选修多门课程,一门课程可以有多名学生选修。
1.ER模型。
2.ER模型向关系模式转换的一般方法。实体:
实体类型→关系模式。联系:
1∶1:将联系臵入任一端实体,并加入另一端实体主键为外键。1∶N:将联系臵入多端实体,并加入一端实体主键为外键。M∶N:建立新关系模式,主键为两端实体的主键,并为外键。3.关系模式
s(sno,class,sname,sex,birthday,addr)c(sno,cname,credit)sc(sno, cno,score)4.试用SQL语句表示以下数据编辑:
1.INSERT INTO S(sno, class, sname, sex)VALUE(‘0025’, ‘982’, ‘张三’, ‘男’)2.DELETE FROM SC WHERE SNO=‘0001’AND S.SNO=SCSNO 3.update sc set score=score+5 from where cno=’c001’ 4.update sc set score=score*(1+0.05)from c,sc where sname=’ 数据库’ and c.cno=sc.cno 5.update sc set score=score*(1+0.05)from s,sc where sex=’ 女’ and s.sno=sc.sno and score<(select avg(score)from sc)
5.试用代数表达式表示以下查询:
1.select * from s 2.select sno,sname,sex from s where address like '%西安% 3.select sc.sno,sname, score from s,c,sc where sc.sno=s.sno and sc.cno=c.cno and cname='数据库' 4.select sno,sname,sex from s where not exists(select * from c where not exists(select * from sc where sc.sno=s.sno and sc.cno=c.cno))5.select sc1.sno from sc as sc1,sc as sc2 where sc1.sno=sc2.sno and sc1.cno<>sc2.cno 6.select cno,cname from c where not exists(select cno from sc,s where s.sno=sc.sno and c.cno=sc.cno and sno='0001')。
6.试用SQL语句表示以下查询:
1.select * from s 2.select sno,sname,sex from s where address like '%西安% 3.select sc.sno,sname, score from s,c,sc where sc.sno=s.sno and sc.cno=c.cno and cname='数据库' 4.select sno,count(*)as num,sum(score), max(score), min(score)from sc group by sno 5.select sno,sname,sex from s where not exists(select * from c where not exists(select * from sc where sc.sno=s.sno and sc.cno=c.cno))6.select sc1.sno from sc as sc1,sc as sc2 where sc1.sno=sc2.sno and sc1.cno<>sc2.cno
笔试样卷三
参考答案
一、填空题(30分)
1.数据完整性包括、、。2.
SQL Server系统数据库包括、、、。3.
SQL Server中,数据库主数据文件扩展名为,次数据文件扩展名为,事务日志文件扩展名为。4.
SQL Server数据定义语句包括、、。
5.ER模型的中文名称为。6.
经典的结构数据模型包括、、。
7.专门的关系运算包括、、、。8.
SQL Server数据操纵命令包括、、、。
9.使用存储过程的目的是。10.
数据库索引包括、。
11.数据库系统3级结构包括、。
二、设有学生成绩库,包含三张表:
学生(学号,班级,姓名,性别,出生日期,地址,电话,信箱)课程(课程编号,课程名称,学分)选课(学号,课程编号,成绩)用SQL语句完成以下操作(50分)。
1、删除所有成绩为NULL的学生选课信息。
2、将所有不及格课程的成绩加5分。
3、将所有“数据库应用”课程的成绩加5分。
4、查询所有课程的所有信息。
5、查询所有学生的姓名、性别。
6、查询所有男生的姓名、年龄。
7、查询所有学生的平均成绩,并按平均成绩排名次。
8、查询所有选修了“数据库应用”课程的学生的学号、姓名和该课成绩。
9、查询张三同学没有选修的课程编号、课程名称。
10、查询所有学生都选修的课程编号、课程名称。
三、关系模式R(ABCD),F={AB→C,C→A,C→D,D→B}(20分)
1、关系R的所有候选码是什么?
2、R是否属于3NF,解释你的结论。
数据库应用笔试样卷三参考答案
一、填空题(30分)
1.数据完整性包括 实体完整性、参照完整性、用户定义完整性。2.SQL Server系统数据库包括 master、model、msdb、tempdb。
3.SQL Server中,数据库主数据文件扩展名为mdf,次数据文件扩展名为 ndf,事务日志文件扩展名为ldf。
4.SQL Server数据定义语句包括 create、drop、alter。5.ER模型的中文名称为实体联系模型。
6.经典的结构数据模型包括 层次、网状、结构。7.专门的关系运算包括 选择、投影、连接、除。
8.SQL Server数据操纵命令包括 insert、delete、update、select。9.使用存储过程的目的是 减轻网络流量、提高效率。10.数据库索引包括聚集、非聚集。
11.数据库系统3级结构包括外部级、概念级和内部级。
二、设有学生成绩库,包含三张表:
学生(学号,班级,姓名,性别,出生日期,地址,电话,信箱)课程(课程编号,课程名称,学分)选课(学号,课程编号,成绩)用SQL语句完成以下操作(50分)。
1.delete from sc where score is null 2.update sc set score=score+5 from where score<60 3.update sc set score=score+5 from c,sc where sname=’ 数据库’ and c.cno=sc.cno 4.select * from c 5.select sname.sex from s 6.select sname.year(getdate())-year(birthday)as age from s where sex=’ 男’ 7.select sno,avg(score)from sc group by sno order by 2 desc 8.select sc.sno,sname,cname,score from s,c,sc where sc.sno=s.sno and sc.cno=c.cno and cname='数据库' 9.select cno,cname from c where not exists(select cno from sc,s where c.cno=sc.cno and c.sno=s.sno and sname='张三')10.select cno,cname from c where not exists(select * from s where not exists(select * from sc where sc.sno=s.sno and sc.cno=c.cno))
三、关系模式R(ABCD),F={AB→C,C→A,C→D,D→B}(20分)
1.关系R的所有候选码。AB及C 2.关系R不属于3NF。因为非候选码传递依赖于侯选键AB
数据库试题及答案 两套 收藏 数据库原理试题(A卷)
一、填空题(每空 1 分,共 20 分)
1.对于一个国家来说,数据库的建设规模、数据库信息量的 _____________ 和 _____________ 已成为这个国家信息化程度的 ________________。2.数据模型通常由: ________________、________________ 和 _____________ 三部分组成。
3.游标的功能是把 ________________ 转换为 ________________。4.最常用的数据库的恢复技术是_____________ 和 _____________。
5._____________ 模型是现实世界到 _____________ 机器模型的中间桥梁。6.数据独立性是指_____________ 和_____________ 独立性。
7.数据库应用程序开发工具目前有 ________________、_________________、________________、和 ________________ 等。
8.目前数据库产品有 SQL Server 和 ________________、________________ 等。
二、选择题(每小题 1 分,共 10 分)
1.关于冗余数据的叙述中,不正确的是()。A .冗余的存在容易破坏数据库的完整性 B .冗余的存在给数据库的维护增加困难.C .不应该在数据库中存储任何冗余数据 D .冗余数据是指可由基本数据导出的数据 2.概念模型独立于()。
A . ER 模型 B .硬件设备 C . DBMS D .操作系统 3.下列叙述正确的为()。
A.主码是一个属性,它能唯一表识一列 B.主码是一个属性,它能唯一表识一行
C.主码是一个属性或属性集,它能唯一表识一列 D.主码是一个属性或属性集,它能唯一表识一行
4.数据库三级模式体系结构的划分,有利于保持数据库的()。
A .数据独立性 B .数据安全性 C .结构规范化 D .操作可行性 5.一个关系中的候选关键字()。
A .至多一个 B .可多个 C .必须多个 D .至少 3 个 6.常用的关系运算是关系代数和()。
A .集合代数 B .逻辑演算 C .关系演算 D .集合演算 7.在基本层次联系中,记录型之间的联系是()。
A .一对一联系 B .一对多联系 C .多对多联系 D .多对一联系 8.并发操作会带来哪些数据不一致性()。
A .不可修改、不可重复读、脏读、死锁 B .不可重复读、脏读、死锁 C .丢失修改、脏读、死锁 D .丢失修改、不可重复读、脏读 9.在数据库与宿主语言之间传递信息是通过()。
A.全局变量 B.共性变量 C.公共数据区 D.系统缓冲区 10.数据库的()是指数据的正确性和相容性。A.安全性 B.完整性 C.并发控制 D.恢复
三、判断题(每小题 1 分,共 10 分 , 对不正确的要写出理由)1.子模式 DDL 是用来描述数据库的物理存储结构的。()2.同一个关系模型的任两个元组值不能全同。()3.基本表是本身独立存在的表,在 SQL 中一个关系就对应基本表。()4.数据流程图(DFD)是用于描述结构化方法中详细设计阶段的工具。()5.若数据库中只包含成功事务提交的结果则此数据库成为处于安全状态()6.事务的持续性是指事务中包括的所有操作,要么都做,要么都不做。()7.DB 用户的权限可分为具有 DBA 特权的用户和一般 DB 用户()8.数据库的网状模型应满足的条件是必须有两个以上的结点。()
9.CREAT TABLE 命令可直接定义主码、外码、参照表,系统就能够自动地执行实体完整性和参照完整性规则。()
10.分布式数据库数据独立性包括数据的逻辑独立性、数据的物理独立性和数据分布独立性。()
四、(每小题 3 分,共 15 分)设有关系模式,其中
(1)计算。
(2)求 F 的最小等价依赖集。(3)求出 的关键字。
(4)将 R 分解使其满足 BCNF 且无损连接。
(5)将 R 分解使其满足 3NF 且无损连接与保持函数依赖。
五、综合题(25 分)
1.将 R ∪ S、R-S 两种关系代数基本运算表示为域关系演算表达式。(5 分)2.关系数据库中有下列三个关系:
商店(商店代号,商店名,店员人数,所在城市)商品(商品编号,商品名,价格)商店--商品(商店代号,商品编号,商品数量)(1)用 ALPHA 语言完成下列操作:(4 分)检索销售全部商品的商店姓名。
(2)用关系代数完成下列操作:(4 分)检索店员人数大于 23 商店代号和商店名。(3)试用 SQL 语句写出下列查询:
(a)找出店员人数不超过 100 人或者在长沙市的所有商店的代号和商店名。(4 分)(b)找出供应书包的商店名。(4 分)
(c)找出至少供应商品代号为 233 的商店所供应的全部商品的商店名。(4 分)
六、设计题(每小题 10 分,共 20 分)
某市人才交流中心拟建立人才信息交流网。现有资料:每个前来登记的个人需填写的《人才入库登记表》(见附表 1);每个前来登记的企业需填写的《企业信息登记表》(见附表 2)。
试设计人才、岗位和企业的实体联系图,并将概念模型转换为关系模式。附表 1 :人才入库登记表 个人编号: 登记日期 姓名
性别
出生日期 身份证号 毕业院校
专业
学历 联系电话
电子邮件
附表 2 :企业信息登记表 企业编号: 登记日期 企业名称
地址
企业网址 岗位需求 联系人
联系电话
电子邮件 企业简介
数据库原理试题答案(A卷)一.填空题(每空 1 分,共 20 分)
1.安全性,完整性,衡量标准
2.数据结构,数据操作,完整约束。3.集合记录,单记录
4.数据转储,登录日志文件 5.概念,数据模型 6.物理,逻辑
7.C++, VB, Def, C# 8.Oracle, Access
二、单项选择题(每小题 1 分,共 10 分)
C,C,D,A,B,C,B,D,A,B
三、判断题(每小题 1 分,共 10 分)
F,T,T,F,T,F,T,T,T
四、(每小题 3 分,共 15 分)
• 令 x={AD}, x(0)=AD, x(1)=ACD, x(2)=ACD, 故(AD)+ =ACD • 将 F 中依赖右部属性单一化: F 1 : A C C A B A B C D A D C 在 F 1 中去掉多余的函数依赖: 因为 B A,A C 所以 B C 是多余的 又因为 D A,A C 所以 D C 是多余的 F 2 : A C C A B A D A 函数依赖集的最小集不是唯一的,本题答案不唯一。
因为 F 2 中所有依赖的左部都是单属性,所以不存在依赖左部多余的属性。所以 F : A C C A B A D A(3)因为 DB 在 F 中的又函数依赖的右部中均未出现,所以候选关键字一定包含 BD,而(BD)+ =ABCD 因此 BD 是 R 惟一的候选关键字。(4)考虑 A C,所以 AC 不是 BCNF(AC 不包含候选关键字 BD),将 ABCD 分解为 AC 和 ABD。AC 已是 BCNF,进一步分解 ABC 选择 B A,把 ABD 分解为 AB 和 BD,此时 AB 和 AD 均为 BCNF,所以 ρ ={AC,BA,DA,BD}(5)Ri A B
C D AC BA DA a 1 a 1 a 1 a 2 a 3 a 3 a 3
a 4
五、,R US={t|P(t)US(t)`}
R-S={t|P(t)?S(t)`}(5 分),(1)SHOP(sno,sna,snu,city)
GOODS(gno,gna,price)
SHOP-GOODS(sno,gno,num)
Range GOODS rx
SHOP-GOODS ry
GET W(SHOP.SNA)rx ry(ry.gno=rx.gno shop.sno=ry.sno)
(2)∏ sno,sna(δ snu>23(SHOP))(3 分)
(3)(a)SELECT SNO,SNA
FROM SHOP
WHERE CITY=' 长沙 'OR SNO<=100(3 分)
分)((b)SELECT SHOP.sna
FROM SHOP,SHOP-GOODS,GOODS
WHERE SHOP.sno=SHOP-GOODS.sno AND GOODS.gna=' 书包 '
SHOP-GOODS.gno =GOODS.gno(4 分)
(c)SELECT sna
FROM SHOP sx
WHERE NOTEXIST
(SELECT *
FROM GOODS-SHOP sy
WHERE GOODS-SHOP.sno=' 223' AND NOTEXIST
(SELECT *
FROM SHOP-GOODS sz
WHERE sy.gno=sz.gno AND sx.sno=sz.sno))(5 分)
六、设计题
问题一: 设计人才、岗位和企业的实体联系图(5 分)
问题二: 转换关系模式(5 分)
(b)个人编号,岗位,最低薪水,登记日期
(c)企业编号,岗位,专业学历,薪水,备注,登记日期
(d)个人编号,姓名,性别,出生日期,身份证号,毕业院校,专业,学历,证书,名称,联系电话,电子邮件,个人简历,特长
(e)证书名称,证书编号
企业(企业编号,企业名称,联系人,联系电话,地址,企业网址,电子邮件,企业简介)
数据库原理试题(B卷)
一、填空题(每空 2 分,共 20 分)
1、关系中主码的取值必须唯一且非空,这是由 ___________ 完整性规则决定的。
2、当数据库被破坏后,如果事先保存了数据库副本和 ________________,就有可能恢复数据库。
3、数据库的 ____________ 是指数据库的正确性和相容性。
4、关系数据操作语言的特点是:操作对象与结果均为 ___________、操作的非过程性强、语言一体化、并且建立在数学理论基础之上。
5、SQL 是一种介于关系代数和 _____________ 之间的结构化的查询语言。
6、对于每一个外模式,数据库系统都有一个 _______________ 映象,它定义了该外模式与模式之间的对应关系。
7、视图是一个需表,它一经定义就可以和基本表一样被查询,但 _________ 操作将有一定的限制。
8、数据仓库是一个面向主题的、_____________、不可更新的、随时间不断变化的数据集合。
9、避免活锁的简单方法是采用 ________________ 的策略。
10、知识库系统和主动数据库系统是将数据库技术和 ______________ 技术相结合产生的。
二、选择题(每小题 1 分,共 10 分)
1、SQL 中,下列涉及空值的操作,不正确的是()
A . AGE IS NULL B . AGE IS NOT NULL C . AGE=NULL D . NOT(AGE IS NULL)
2、关系数据模型的三个组成部分中,不包括()
A .完整性规则 B .数据结构 C .数据操作 D .并发控制
3、DB, DBMS 和 DBS 三者间的关系是()
A . DB 包括 DBMS 和 DBS B . DBS 包括 DB 和 DBMS C . DBMS 包括 DBS 和 DB D . DBS 与 DB、DBMS 无关
4、数据库的并发操作可能带来的问题包括()
A .丢失更新 B .数据独立性会提高 C .非法用户的使用 D .增加数据的冗余度
5、并发事务的交叉执行破坏了事务的()
A .原子性 B .隔离性 C .一致性 D .永久性 6、3NF()规范化为 BCNF。
A .消除非主属性对码的部分函数依赖 B .消除非主属性对码的传递函数依赖 C .消除主属性对码的部分和传递函数依赖 D .消除非平凡且非函数依赖的多值依赖
7、()是长期存储在计算机内的有组织,可共享的数据集合。
A .数据库管理系统 B .数据库系统 C .数据库 D .文件组织
8、一个 1 : n 联系可以转换为一个独立的关系模式,关系的码为()
A .实体的码 B.各实体码的组合 C.n 端实体的码 D.每个实体的码
9、在数据库设计中,将 ER 图转换成关系数据模型的过程属于()
A.需求分析阶段 B.逻辑设计阶段 C.概念设计阶段 D.物理设计阶段
10、关系完备的系统是指()。
A.仅支持关系数据结构,不支持集合级的操作 B.仅支持关系数据结构和三种关系操作
C.支持关系数据结构和所有的关系代数操作 D.支持关系模型的所有特征
三、简答题(每小题 5 分,共 20 分)、数据库系统中的常见故障有那些?、简述数据模型的三个组成部分。、所有的视图是否都可以更新?为什么?、什么样的并发调度是正确的调度?
四、(共 10 分)事务 T1 和 T2 同时对 A 的值操作。A 的初值是 50,事务 T1 对 A 的值减 10,事务 T2 对 A 的值加倍,1、若这两个事务并发执行,举例可能结果。
2、请给出一个可串行化调度,并给出执行结果。
五、(共 10 分)对学生-课程数据库有如下的查询:
SELECT Sname
FROM Student, Cource , SC
WHERE Student.Sno=SC.Sno AND SC.Cno=Course.Course.Cno AND Course.Cname=' 数据库 '
此查询要求选修了数据库的所有学生的姓名。
(1)试画出用关系代数表示的语法树;
(2)对原始的语法树进行优化,画出优化后的标准语法树。
六、(共 20 分)设有学生-课程数据库,其数据库模式为 : 学生 S(学号 SNO,姓名 SN,所在系 SD,年龄 SA)、课程 C(课程号 CNO,课程姓名 CN,先修课号 PCNO)、学生选课 SC(学号 SNO,课程号 CNO,成绩 G)。、试用关系代数,ALPHA 语言语言分别写出下列查询:
(1)查询选修了 2 号课程的学生的学号;(4分)
(2)求选读了‘数据库概论'的学生学号和姓名;(4分)
(3)求选修了全部课程的学生学号、姓名。(4分)、试用 SQL 语言写出下列查询:
(1)查询学生总人数;(2分)
(2)查询选修了 5 门以上课程的学生学号;(3分)
(3)删除‘数据结构'课程及所有对它的选课情况。(3分)
七、综合题(共 10 分)
设有一局部应用,包括 3 个实体“科室”,“医生”,“病人”,且有以下事实:每位医生属于且仅属于一个科室;每个科室可以聘用若干医生,对每个医生聘用时存有聘用期限和聘用日期;一个病人可以由不同的医生为其诊断,每个医生可以为若干病人诊治,每次诊断存有就诊日期。设科室的属性包括科室代码,科室名称;医生的属性包括工号,姓名和职称;病人的属性包括姓名、年龄、工作单位。
1、试设计 E - R 图,注明属性和联系类型。
2、将 E - R 图转换为等价的关系模型(包括关系名,属性名和码)。
数据库原理试题答案(B卷)
一、填空题(每题 2 分,共 20 分)
1、实体
2、日志文件
3、完整性
4、关系
5、关系演算
6、外模式 / 模式
7、更新
8、集成的
9、先来先服务
10、人工智能
二、选择题(每题 1 分,共 10 分)、C 2、D 3、B 4、A 5、B 6、C 7、C 8、C 9、B 10、C
三、简答题(每题 5 分,共 20 分)、答案要点:数据库系统中的常见故障有:事务内部的故障(事务故障)(1 分)、系统故障(1 分)、介质故障(2 分)、计算机病毒(1 分)。、答案要点:数据模型通常由数据结构(1 分)、数据操作(2 分)、完整性约束(2 分)三部分组成。、答案要点:不是所有的视图都是可更新的(2 分);因为有些视图的更新不能唯一地有意义地转换成对相应基本表地更新(3 分)。、答案要点:多个事务的并发执行是正确的,当且仅当其结果与按某一次序串行执行它们时的结果相同(5 分)。
四、(共 10 分)、80,90、T 1 T 2
Slock A
读 A = 50
Y = A
Unlock A
Xlock A
A=Y-10 Slock A
写回 A = 40
等待
Unlock A 等待
读 A = 40
Y = A
Unlock A
Xlock A
A=Y × 2
写回 A = 80
Unlock A
五、(共 10 分)
六、(共 20 分)、关系代数:
(1)sno(cno =‘ 2 '(SC))(2分)
(2)Sno,Sn(Cn=' 数据库概论 ')(2分)
(3)Sno,SN(S(Cno,sno(SC)÷ Cno(C)))(2分)
ALPHA 语言
• GET W(SC.SNO): SC.CNO=' 2'(2分)
• RANGE C X
SC Y
GET W(S.SNO.S.SN): X(Y(X.CNO=Y.CNO ^ Y.SNO=S.SNO ^ X.CN=' 数据库概论 '
• RANGE C X
SC Y
GET W(S.SNO,S.SN): X(Y(Y.CNO=X.CNO ^ Y.SNO=S.SNO))(2分)、(1)SELECT COUNT(*)FROM STUDENT(2分)
(2)SELECT SNO FROM SC
GROUP BY SNO HAVING COUNT(*)>5(3分)
(3)DELECT FROM SC
WHERE SC.CNO IN(SELECT C.CNO FROM C WHERE CN=' 数据结构 ')
DELETE FROM C WHERE CN= ‘数据结构'(3分)
七、(共 10 分)
(5分)
科室(科室代码,科室名称)(1分)
医生(工号,姓名,名称,聘用日期,聘用期限,科室)(1分)
病人(病历号,姓名,年龄,工作单位)(1分)
2分)(就诊(医生工号,病历号,就诊日期)(2分)
发表于 @ 2008年12月29日 09:41:00 | 评论(4)| 编辑| 举报| 收藏
旧一篇:考试临近——在即 | 新一篇:学习IT的情感生活 查看最新精华文章 请访问博客首页相关文章
数据库概论笔记(第一天)数据库原理及应用《数据库系统概论》(第三版)数据库数据基础--基本概念数据库的基本结构三个层次数据库原理与应用数据库设计的理论与方法收藏数据库的主要特点hlf881216 发表于2009年12月9日 17:05:52 IP:举报回复删除 很好!!!riiiqpl 发表于2009年12月21日 21:51:03 IP:举报回复删除 看不到图片呀匿名用户 发表于2009年12月25日 13:02:42 IP:举报回复删除 zs84102030 发表于2009年12月28日 15:04:19 IP:举报回复删除 发表评论 表 情: 评论内容: 用 户 名: 登录 注册 匿名评论 匿名用户验 证 码: 重新获得验证码 Copyright © pengluer Powered by CSDN Blog
第三篇:数据库试题及答案
《数据库技术与应用》样题
一、选择题(共 30 分,1--20 每小题 1 分,21—25 每小题 2 分。下列各题 A)、B)、C)、D)四个选项中,只有一个选项是正确的)1 在 SQL Server 中,关于视图的正确叙述是
A)视图与数据库表相同,用来存储数据B)视图不能同数据库表进行连接操作 C)在视图上不能进行更新操作D)视图是从一个或多个数据库表导出的虚拟表 2 SQL 是那几个英文单词的缩写
A)Standard Query LanguageB)Structured Query Language C)Select Query LanguageD)以上都不是 3 不属于 SQL Server 系统全局变量的是()。
A、@@ErrorB、@@ConnectionC、@@Fetch_StatusD、@Records 4 下面描述错误的是()
A、每个数据文件中有且只有一个主数据文件 B、日志文件可以存在于任意文件组中 C、主数据文件默认为 primary 文件组 D、文件组是为了更好地实现数据库文件组织 5 SQL Server 数据库文件有三类,其中主数据文件的后缀为()A、.mdfB、.ldfC、.ndfD、.idf
6、下面标识符不合法的是()
A、[my delete]B、_mybaseC、$moneyD、trigger1 7 下面字符串能与通配符表达式[ABC]%a 进行匹配的是()A、BCDEFB、A_BCDC、ABC_aD、A%
8、下面对索引的相关描述正确的是()列值唯一的列适合间索引 A、经常被查询的列不适合建索引B、列值惟一的列适合建索引
C、有很多重复值的列适合建索引D、是外键或主键的列不适合建索引
9、在“连接”组中有两种连接认证方式,其中在()方式下,需要客户端应用程序连接 时提供登录时需要的用户标识和密码。
A、Windows 身份验证B、SQL Server 身份验证 C、以超级用户身份登录时D、其他方式登录时
10、索引是在基本表的列上建立的一种数据库对象,它同基本表分开存储,使用它能够加快 数据的()速度。
A、插入B、修改C、删除D、查询在where子句中出现频率较高的列应尽量创建索引
11、以下哪种情况应尽量创建索引()
A、在 Where 子句中出现频率较高的列B、具有很多 NULL 值的列 C、记录较少的基本表D、需要更新频繁的基本表
12、域完整性用于保证给定字段中数据的有效性,它要求表中指定列的数据具有正确的数据 类型、格式和有效的()。
A、数据值B、数据长度C、取值范围D、以上都不是 13 以下不属于表之间定义关系的是
A)一对一关系B)一对多关系C)多对多关系D)少对多关系 14 目前数据库有三种基本的数据模型是 ________。
A、层次模型、网络模型、关系模型B、对象模型、网络模型、关系模型
网络模型、对象模型、层次模型D、层次模型、关系模型、对象模型 从“产品”表里查询出价格高于产品名称为“海天酱油”的产品的记录,此 SQL 语句为 A、SELECT * FROM 产品WHERE 价格>海天酱油 B、SELECT * FROM 产品WHERE 价格>
(SELECT * FROM 产品WHERE 产品名称>’海天酱油’)C、SELECT * FROM 产品WHERE EXISTS 产品名称=’海天酱油’ D、SELECT * FROM 产品WHERE 价格>
(SELECT * FROM 价格WHERE 产品名称=’海天酱油’)16. 不允许记录中出现重复索引值的索引是。A)主索引B)主索引、候选索引、普遍索引
C)主索引和候选索引D)主索引、候选索引和唯一索引 数据库应用系统是由数据库、数据库管理系统(及其开发工具)、应用系统、)和用(户构成。
A)DBMSB)DBC)DBSD)DBA数据库管理员
18、下面列出的数据库管理技术发展的三个阶段中,没有专门的软件对数据进行管理的是()。
I.人工管理阶段 II.文件系统阶段 III.数据库阶段 A.I 和 IIB.只有 IIC.II 和 IIID.只有 I
19、要保证数据库的数据的逻辑独立性,需要修改的是()。A.模式与外模式B.模式与内模式
C.三级模式之间的两层映射D.三层模式
20、当数据库损坏时,数据库管理员可通过何种方式恢复数据库()A、事务日志文件B、主数据文件C、DELETE 语句D、联机帮助文档
21、在查询分析器中运行下面的语句
CREATE TABLE numbers(N1 int,N2 numeric(5,0),N3 numeric(4,2))GO
INSERT INTO numbers VALUES(1.5,1.5,1.5)SELECT * FROM numbers
后会得到什么样的结果()
A、返回 2,2 和 1.50 的结果集合 B、返回 1.5,1.5 和 1.5 的结果集合
C、CREATE TABLE 命令不会执行,因为你无法为列 N2 设置精度为 0 D、返回 1,2 和 1.50 的结果
22、分析下面的表定义 Create Table autos
(makevarchar(20)not null,modevarchar(20)not null,acquisition_cost money null, acquisition_datedatetime null)
执行以上语句后,再执行下面的语句会发生()Truncate table autos Begin transaction
Insert into autos(make,model)values(‘Tucker’,’Torpedo’)If exists(select * from autos)Rollback tran Else
Commit tran End
A、该批处理将失败,因为 begin tran„commit tran 不正确 B、该批处理结束后,表内空无一行 C、该批处理结束后,表内有一行 D、所有适当的错误处理会被执行
23、有下面的存储过程
Create procedure Myp1 @P int AS
Select name,age from student where age=@P
假如你要在 student 表中查找年龄是 20 岁的学生,)(可以正确地调用这个存储过程。A、EXEC Myp1 @P=’20’B、EXEC Myp1 @P=20’ C、EXEC Myp1 P=’20’D、EXEC Myp1 P=20’
24、SQL Server 系统中的所有系统级信息存储于哪个数据库()。A、masterB、modelC、tempdbD、msdb
25、找出考试成绩前 5 名的学生
A、select top 5 姓名,分数 from student
B、select top 5 姓名,分数 from student order by 分数 desc C、select top 5 姓名,分数 from student order by 分数 asc
D、select top 5 percent 姓名,分数 from student order by 分数 desc
二、填空题(共 30 分,第 1~15 小题每空 1 分,16~20 小题每空 2 分)
1、T-SQL 中的查询、更新、删除命令分别用 SELECT、()、DELETE 表示。
2、SQL 中的授权命令是(),权限回收命令是 REVOKE。
3、数据库的三类完整性约束分别为()(、)、用户自定义完整性。
4、数据库系统的核心是()。、在 E-R 图 中,图 形 包 括 矩 形 框、菱 形 框、椭 圆 框,其 中 表 示 实 体 联 系 的 是()。
6、()是由一个或多个基本表导出的虚拟表,是关系数据库系统提 供给用户以多种角度观察数据库中数据的重要机制。
7、关系模型中的元组、属性和关系数据库表中的()、字段对应。
8、将已有数据库加到 SQL Server 系统环境中,可以右单击“数据库”项,选择其快捷菜单 中的(),完成操作后,就可使用这个数据库了。
9、多表连接时,为了避免产生笛卡尔积,并且得到所需要的检索结果,要使用 WHERE 子句 给出连接条件。一般来说,对 N 个表(或视图)的检索要有()个连接条件。
10、若有命令 SELECT S.姓名,C.班组 FROM STUDENT S,CLASS C„„ 则其中的 S 和 C 称 为表的()。
11、SQL Server 中,存储过程有三种,它们分别是()、用户自定义的存 储过程和扩展存储过程。
12、表中某列为变长字符数据类型 varchar(100),其中 100 表示字符或字节数。假如输入 字符串为 gtym13e5,存储的长度为()字节。
13、Server 查询分析器中使用的注释方式有两种,SQL它们是()。
14、触发器是一种特殊类型的存储过程,其特别性在于它不需要用户的显式调用,而是在()自动执行。
15、如果事务遇到错误,则所有的数据更改被取消,系统()。
16、begin „ end 用来定义一个语句块,begin 和 end 之间的语句作为一个单独的执行单 元来执行。如果 if „else 或 while 语句中不使用 begin „ end 语句块,则只执。行
17、在人事表中若有条件 SELECT„„FROM„„WHERE 姓名 LIKE ‘_宝%’,将检索。到
以下填空均使用给出的“学生选课”数据库
学生 S(学号 sno,姓名 sname,性别 sex,年龄 age,民族 nation,籍贯 place,所属班级 clname)课程 C(课程编号 cno,课程名称 cname,学期 term,学时 period,学分 credit)选课 SC(学号 sno,课程编号 cno,成绩 grade)
学生表 S sno 20080101 20080102 20080205 20080211 20081008 20081010 sname 李枫 张强 王依萍 胡东 李小玲 李萍 sex 女 男 女 男 女 男
age 22 29 18 24 20 30
nation 汉 汉 满 汉 汉 回
cname 软件工程 软件工程 网络工程 网络工程 英语 英语
place 陕西渭南 陕西榆林 广西玉林 新疆喀什 浙江温州 宁夏吴忠
选课表 SC Sno 20080101 20080101 20080101 20080101 20080102 20080102 20080102 20080102 20080205 20081008 20081008 20081010 Cno C01 C03 C04 C05 C01 C03 C04 C05 C01 C01 C02 C01 90 85 88 92 80 85 grade 90 90 85 95
课程表 C Cno C01 C02 C03 C04 C05 C08 C10 cname 英语 英语写作 高等数学 数据结构 离散数学 普通物理 计算机网络
term 1 2 1 4 3 2 5
Period 108 36 108 54 72 54 54
credit 6 2 6 3 3 3 3
18、创建课程表 C 与选课表 SC 的一多关系。Create table SC
(Snochar(10),Cno char(4),grade real, Constraint PK_S Primary Key(Sno)Foreign Key(Cno)reference)
19、以下程序用于查找 S 表是否存在姓名为马东的记录,并显示相关的信息,完成该程序。char(8)Declare Set @name=’马东’
(select * from S where sname=@name))If(Print ‘姓名为’+@name+’的同学存在’ Else
Print ‘姓名为’+@name+’的同学不存在’ 20、以下创建一个 st_g 的存储过程 st_gcreate As Begin
Select x.sno,x.sname,y.grade from S x,SC y where x.sno=y.sno End
。该程序完成的功能是
三、用 T-SQL 命令完成下列各题,所使用的数据库 DBWSBM 关系如下图。(共 40 分,每小题 4 分)
1、显示 DBWSBM 数据库中的 tblkasheng 表、tblxb 表、tblkhmk 表、tblbmdw 表的全部 信息(如图)。
2、显示 tblkaosheng 表中全部员工的姓名(xm)和考试成绩(kscj)的 80%用作平时成 绩,去掉姓名和考试成绩相同的记录,列标题用汉字姓名和平时成绩显示。
3、对 tblkaosheng 表,列出太原理工大学成教院和山西大学成教院的学生名单。
4、对于 tblbmdwdm 和 tblkaosheng,列出太原理工大学所有考生的信息,并将结果存 入 N1 表中。
5、对 tblkaosheng 表,列出按报名单位代码(bmdwdm)统计的考试成绩平均分数,列 出及格的部门编号及平均分。
6、创建一个视图 V1,要求该视图准确包含所有考生的准考证号、姓名、性别、考核模 块和考试成绩。
7、分)为 tblkaosheng 表定义一个全局滚动动态游标 cur_tblkaosheng,用于访问(6 准考证号、姓名、考试时间和考试成绩。并打开声明的游标,读取游标的数据。
8、创建一个存储过程 P1,要求执行改存储过程能够返回考生数据表(tblkaosheng)中
bmdwdm(报名单位代码)为 2490 的考生的 zkzh(准考证号)(xm)姓名、性别和 kscj(考、试成绩)结果集,并且该结果集要按照 bmdwdm 和准考证号升序排列
9、为表 tblzy(职业表)创建一个名为 T1 触发器,当执行添加、更新或删除时,激活该 触发器。
10、分)对 tblkasheng 表,给所有不及格的考生的考试成绩加 5 分。(2 《数据库技术与应用》样题参考答案
一、选择题(共 30 分,1--20 每小题 1 分,21—25 每小题 2 分。下列各题 A)、B)、C)、D)四个选项中,只有一个选项是正确的)
1、D2、B3、D4、A5、A6、A7、C8、B
9、B10、D11、A
12、C
13、D14、A
15、D16、D
17、D
18、D19、A 20、A
21、D22、C23、B
24、A
25、B
二、填空题(共 30 分,第 1~15 小题每空 1 分,16~20 小题每空 2 分)
1、update
2、grant
3、实体完整性参照完整性
4、数据库管理系统 或 DBMS
5、菱形
6、视图
7、记录
8、附加
9、N-1
10、别名
11、系统存储过程 12、8
13、--单行注释,/**/多行注释
14、事件触发时
15、回滚到事务起始点
16、紧跟其后的一条语句
17、宝前一个任意汉字,宝后多个任意汉字
18、C(Cno)
19、@nameexists
20、Procedure查询学生选课数据库中所有学生的选课成绩
三、用 T-SQL 命令完成下列各题,所使用的数据库关系如下图。(共 40 分,每小题 4 分)
1、select * from tblkaosheng select * from tblxb select * from tblkhmk select * from tblbmdw
2、select DISTINCT xm as 姓名,kscj*0.8 as平时成绩 from tblkaosheng
3、解一:selectbmdwmc,xm from tblkaoshengx,tblbmdw y where x.bmdwdm=y.bmdwdm and bmdwmc='太原理工大学成教院' or bmdwmc='山西大 学成教院'
解二:SELECTtblbmdw.bmdwmc, tblkaosheng.xm
FROM tblkaosheng INNER JOIN tblbmdw ON tblkaosheng.bmdwdm = tblbmdw.bmdwdm WHERE(tblbmdw.bmdwmc = '太原理工大学顾教院')OR(tblbmdw.bmdwmc = '山西大学成教院')
4、select * from tblkaoshengx,tblbmdw y where x.bmdwdm=y.bmdwdm and bmdwmc like '太原理工大学%'
5、select bmdwdm,AVG(kscj)from tblkaosheng group by bmdwdm having AVG(kscj)>=60
6、解一:create view V1 as select xm AS 姓名, xbmc AS 性别,khmkmcAS 考核模 块,kscjAS 考试成绩 from tblkaosheng x, tblxb y, tblkhmk z Where x.xbdm=y.xbdm and x.khmkdm=z.khmkdm 解二:create view V1` as SELECTtblkaosheng.xm AS 姓名, tblxb.xbmc AS 性 别, tblkhmk.khmkmc AS 考核模块, tblkaosheng.kscj AS 考试成绩 FROMtblkaosheng INNER JOIN tblxb ON tblkaosheng.xbdm = tblxb.xbdm INNER JOIN tblkhmk ON tblkaosheng.khmkdm = tblkhmk.khmkdm
7、use DBWSBM DECLARE cur_tblkaosheng CURSOR GLOBAL SCROLL DYNAMIC FOR SELECT zkzh,xm,kssj,kscj FROM tblkaosheng OPEN cur_tblkaosheng FETCH NEXT FROM cur_tblkaosheng WHILE @@fetch_status = 0 BEGIN FETCH NEXT FROM cur_tblkaosheng END CLOSE cur_tblkaosheng DEALLOCATE cur_tblkaosheng
8、create proc P1 as SELECTtblkaosheng.zkzh, tblkaosheng.xm, tblxb.xbmc, tblkaosheng.kscj FROM tblkaosheng INNER JOIN tblxb ON tblkaosheng.xbdm = tblxb.xbdm WHERE(tblkaosheng.bmdwdm = 2490)
/*取第一个数据行*/
/* 检查@@fetch_status是否还有数据可取*/
ORDER BY tblkaosheng.bmdwdm
9、CREATE TRIGGER T1 ON tblzy FOR INSERT,UPDATE,DELETE AS SELECT * FROM inserted SELECT * FROM deleted
10、update tblkaosheng set kscj=kscj+5 where kscj<60
第四篇:数据库试题及答案
简答题部分: 2011.12.15
1.设有关系模式:学生修课管理(学号,姓名,所在系,性别,课程号,学分,成绩),设一名学生可以选修多门课程,一门课程可以被多名学生选修,一名学生有唯一的所在系,每门课程有唯一的课程名和学分。请指出此关系模式的候选键。判断此关系模式是第几范式的,若不是第三范式,请将其规范化为第三范式关系模式,并指出分解后的每个关系模式的主键和外键
答:候选键为:(学号,课程号),它也是此关系模式的主键,由于存在函数依赖:
学号→姓名,课程号→课程名
因此,存在非主属性的部分函数依赖关系,因此它不是第二范式的表
学生表(学号,姓名,所在系,性别),主键为学号,已属于第三范式
课程表(课程表,课程名,学分),主键为课程号,已属于第三范式
选课表(学号,课程号,成绩),主键为(学号,课程号),已属于第三范式
2.设有关系模式:学生表(学号,姓名,所在系,班号,班主任,系主任)其语义为:一名学生只在一个系的一个班学习,一个系只有一名系主任,一个班只有一名班主任,一个系可以有多个班,请指出关系模式的候选键,判断此关系模式是第几范式的,若不是第三范式的请将其规范为第三范式关系模式,并指出分解后的每个关系模式的主键和外键
答:候选键:学号,它是此关系模式的主键
由于存在非主键属性对主键属性的部分函数依赖,因此,此关系模式属于第二范式的,但由于存在如下函数依赖: 学号 → 班号,班号 → 班主任,因此,存在非主键属性对码的传递依赖关系,同样以及
学号 → 所在系,所在系 → 系主任,因此此关系不是第三范式的,对其分解后的结果为:学生信息表(学号,姓名,所在系,班号),主键为“学号”,“班号”为引用班级表的“班号”的外键,“所在系”为引用系表“系名”的外键 班级表(班号,班主任),主键为“班号” 系表(系名,系主任),主键为“系名”
3.设有关系模式:授课表(课程号,课程名,学分,授课教师号,教师名,授课时数),其语义为:一门课程(由课程号决定)有确定的课程名和学分,每名教室(由教师号决定)有确定的教师名,每门课程可以由多名教室讲授,每名教师也可以讲授多门课程,每名教师对每门课程有确定的授课时数.指出此关系模式的候选键;判断此关系模式属于第几范式;若不属于第三范式,请将其规范化为第三范式关系模式,并指出分解后的每个关系模式的主键和外键
答:此关系模式的候选键为(课程号,授课教师号),它们也是主键,由于存在函数以来,课程号—>课程名,授课教师号—>教师名,因此,存在非主属性对主键的部分函数依赖关系,因此它不是第二范式的表,分解如下:
课程表(课程号,课程名,学分),主键为“课程号”,已属于第三范式;
教师表(教师号,教师名),主键为“教师号”,已属于第三范式
2011.12.20
1.试述关系数据库的特点 关系数据模型具有下列优点:
(l)关系模型与非关系模型不同,它是建立在严格的数学概念的基础上的。
(2)关系模型的概念单一,无论实体还是实体之间的联系都用关系表示,操作的对象和操作的结果都是关系,所以其数据结构简单、清晰,用户易懂易用。
(3)关系模型的存取路径对用户透明,从而具有更高的数据独立性、更好的安全保密性,也简
2.试述数据库系统的组成 一般由数据库、数据库管理系统(及开发工具)、应用系统、数据库管理员构成。
3.数据库管理系统的主要功能有哪些? 数据定义功能
数据组织、存储和管理
数据操纵功能
数据库的事物管理和运行功能
数据库的建立和维护功能
4.试诉关系模型的三个组成部分 关系模型由关系数据结构、关系操作集合和关系完整性约束三部分组成。
5.数据字典的内容和作用 答:数据字典是系统中各类数据描述的集合。数据字典的内容通常包括:(l)数据项;
(2)数据结构;(3)数据流;(4)数据存储;(5)处理过程五个部分。其中数据项是数据的最小组成单位,若干个数据项可以组成一个数据结构。数据字典通过对数据项和数据结构的定义来描述数据流和数据存储的逻辑内容。
数据字典的作用:数据字典是关于数据库中数据的描述,在需求分析阶段建立,是下一步进行概念设计的基础,并在数据库设计过程中不断修改、充实、完盖。
6.试述SQL语言的特点 答:
(l)综合统一。sQL 语言集数据定义语言 DDL、数据操纵语言 DML、数据控制语言 DCL 的功能于一体。
(2)高度非过程化。用 sQL 语言进行数据操作,只要提出“做什么”,而无需指明“怎么
做”,因此无需了解存取路径,存取路径的选择以及 sQL 语句的操作过程由系统自动完 成。
(3)面向集合的操作方式。sQL 语言采用集合操作方式,不仅操作对象、查找结果可以是元
组的集合,而且一次插入、删除、更新操作的对象也可以是元组的集合。
(4)以同一种语法结构提供两种使用方式。sQL 语言既是自含
处理要求:指用户需要完成什么处理功能,对处理式语言,又是嵌入式语言。作 的响应时间有什么要求。为自含式语言,它能够独立地用于联机交互的使用方式;作为嵌
安全性与完整性要求
入式语言,它能够嵌入到
10.什么是数据库的逻辑设计?试述其设计步骤。
高级语言程序中,供程序员设计程序时使用。
数据库的逻辑设计就是把概念结构设计阶段设计好(5)语言简捷,易学易用。的E-R图转换为与选用DBMS产品所支持的数据模型相符合7.试述关系模型的完整性规则,在参照完整性中,为什么外部的逻辑结构的过程 码属性的值也可以为空?什么情况下才能为空?
设计步骤:
(1)将概念结构转化为一般的关系、网状、层次模型
(2)将转换来的关系、网状、层次模型向特
定的DBMS支持下的数据模型转换
(3)对数据模型进行优化
名词解释部分
数据:是数据库中存储的基本对象,是描述事物的符号记录 数据库:是长期存储在计算机内、有组织的、可共享的大量数据的集合
数据库系统:是指在计算机系统中引入数据库后的系统,一般由数据库、数据库管理系统(及开发工具)、应用系统、数据库管
理员构成。
http://wenku.baidu.com/view/b13542573c1ec5da50e27045.html 数据库管理系统:是位于用户与操作系统之间的一层数据管理软8.试述视图的优点
件,用于科学地组织和存储数据、高效地获得和维护数据。视图能够简化用户的操作
实体:客观存在并且可互相区别的事物。实体可以是具体的人、视图使用户能以多种角度看待同一数据 事、物,也可以是抽象的概念或联系 视图对重构数据库提供了一定程度的逻辑独立性 属性:实体某一特性 视图能对机密数据提供安全保护
码:唯一标识实体的属性集
9.需求分析阶段的设计目标是什么?调查内容是什么? 模式:也称逻辑模式,是数据库中全体数据的逻辑结构和特征描
设计目标:通过详细调查现实世界要处理的对象,充分了述,是所有用户公共数据的视图。
解原系统的工作概况,明确用户的各种需求,然后在此基础上确外模式:也称子模式或用户模式,是数据库用户能够看见和使用定新系统的功能。的局部数据的逻辑结构和特征的描述,是数据库用户的视图。
内容:信息要求。指用户需要从数据库中获得信息的内容内模式:也称存储模式,是数据物理结构和存储方式的描述,是与性质。
数据在数据库内部的表示方式。
DBA:数据库管理员,是负责全面管理和控制数据库系统的一个(组)人员
关系模式:关系的描述 DDL:数据定义语言 DML:数据操纵语言
视图:是从一个或几个基本表(或视图)导出来的表。它与基本表不同,是一个虚表。
数据库的完整性:是指数据的正确性和相容性,是为了防止数据库中存在不符合语义的数据。
数据库的安全性:是指保护数据库以防止不合法的使用,避免数据的泄密、非法更改和破坏。
事务:是用户定义的一个数据库操作序列,这些操作要么全做,要么全不做,是一个不可分割的工作单位。
日志文件:是用来记录事务对数据库的更新操作的文件。SQL操作
4.针对上题中建立的 4 个表试用 sQL 语言完成第二章习题 5 中的查询。
(l)求供应工程 Jl 零件的供应商号码 SNO;
SELECT DISTINCT SNO FROM SPJ WHERE JNO=’J1’
(2)求供应工程 Jl 零件 Pl 的供应商号码 SNO;
SELECT DISTINCT SNO FROM SPJ WHERE JNO='J1' AND PNO='P1'
(3)求供应工程 Jl 零件为红色的供应商号码 SNO;SELECT SNO FROM SPJ,P WHERE JNO='J1' AND SPJ.PNO=P.PNO
COLOR='红'
(4)求没有使用天津供应商生产的红色零件的工程号 JNO;
SELECT DISTINCT JNO FROM SPJ WHERE JNO NOT IN(SELE JNO FROM SPJ,P,S WHERE S.CITY='天津' AND COLOR='红' AND S.SNO=SPJ.SNO AND P.PNO=SPJ.PNO)。
(5)求至少用了供应商 Sl 所供应的全部零件的工程号 JNO;
由于VFP不允许子查询嵌套太深,将查询分为两步 A、查询S1供应商供应的零件号
SELECT DISTINCT PNO FROM SPJ WHERE SNO='S1'结果是(P1,B、查询哪一个工程既使用P1零件又使用P2零件。
SELECT JNO FROM SPJ WHERE PNO='P1' 5.针对习题3中的四个表试用SQL语言完成以下各项操作:(1)找出所有供应商的姓名和所在城市。
SELECT SNAME,CITY FROM S(2)找出所有零件的名称、颜色、重量。
SELECT PNAME,COLOR ,WEIGHT FROM P
B、DELETE FROM SPJ WHERE SNO=‘S2’(11)请将(S2,J6,P4,200)插入供应情况关系。200)仅供参考
INSERT INTO SPJ VALUES(‘S2’,‘J6’,‘P4’,AND JNO IN(SELECT JNO FROM SPJ WHERE PNO='P2')
(3)找出使用供应商S1所供应零件的工程号码。
SELECT DISTINCT JNO FROM SPJ WHERE SNO='S1'(4)找出工程项目J2使用的各种零件的名称及其数量。
SELECT PNAME,QTY FROM SPJ,P
WHERE P.PNO=SPJ.PNO AND SPJ.JNO='J2'(5)找出上海厂商供应的所有零件号码。
SELECT PNO FROM SPJ,S WHERE S.SNO=SPJ.SNO AND CITY='上海'(6)出使用上海产的零件的工程名称。
SELECT JNAME FROM SPJ,S,J WHERE S.SNO=SPJ.SNO AND S.CITY='上海' AND J.JNO=SPJ.JNO(7)找出没有使用天津产的零件的工程号码。
SELECT DISTINCT JNO FROM SPJ WHERE JNO NOT IN(SELECT DISTINCT JNO FROM SPJ,S WHERE S.SNO=SPJ.SNO AND S.CITY='天津')(8)把全部红色零件的颜色改成蓝色。
UPDATE
P SET COLOR='蓝' WHERE COLOR='红'(9)由S5供给J4的零件P6改为由S3供应。
UPDATE SPJ SET SNO='S3' WHERE SNO='S5' AND JNO='J4' AND PNO='P6'(10)从供应商关系中删除供应商号是S2的记录,并从供应情况关系中删除相应的记录。
A、DELETE FROM S WHERE SNO=’S2’
第五篇:数据库期末考试_试题及答案
数据库试题 4
一、填空题(共9题,每空1分,共15分)1.将数据库从SQL Server实例中删除,即在逻辑上将数据文件和日志文件与服务器相脱离,但文件并不从磁盘上删除,此操作称为_数据库分离,可通过(数据库附加)将其重新加载到SQL Server实例中。
2.SQL Server中用于服务器的所有初始化信息和系统级信息的的系统数据库是master。3.打开数据库student,使之成为当前数据库,可以使用语句_ use student _。
4.使用T-SQL语句创建存储过程时,若要求对存储过程的定义文本进行加密,应使用with encryption子句。
5.若要删除sutdent表的全部数据,数据删除后不可撤销,应使用语句truncate table student,,若想删除student数据表,应使用语句drop table student。
6.若要对数据库中的对象进行改名,就使用的系统存储过程是sp_rename。
7.Sql Server的数据库文件分为数据文件和日志文件,其中数据文件又分为主要数据文件、次要数据文件
8.在Sql Server中,按触发的时机,触发器可分为后触发器和替代触发器。9.在Sql Server的事务处理中,开启一个事务可用Begin Transaction,提交事 和撤销事务应使用Commit transaction,和rollback transaction。
二、简答题(共3题,每题7分,共21分)
1.在数据库端编程,主要有自定义函数、存储过程和触发器三种形式,请比较一下这三种方式的异同。
答:相同点:存储过程、触发器和自定义函数都能完成特定的功能,并且都存储在服务器端的数据字典中。区别:存储过程和自定义函数都可以定义参数,触发器不可以;从调用方式上,存储过程和自定义函数都需要由应用程序或其他功能体进行调用,而触发器是当相应事件发生时自动执行,不须干预;自定义函数需要定义返回类型,函数体中至少要有一条用于返回返回值的语句,而存储过程和触发器不需要。
2.SqlServer有哪些系统数据库,各自的作用是什么?
答:主要的系统数据库有master、model、tempdb和msdb。其中Master数据库保存了Sql Server2005的初始化信息和所有系统级信息。Master数据库是Sql Server 2005中最重要的系统数据库,对其更新和删除操作而导致Master数据库的不可用都将使得整个Sql Server2005系统无法启动和运行。Model数据库是用于保存所有用户数据库和Tempdb数据库的模版。每当用户创建数据库的时候,Sql Server 2005将用Model数据库提供的信息初始化被创建的数据库。Msdb数据库是Sql Server2005代理服务工作时使用的数据库,用于为Sql Server代理服务在警报和作业等操作时提供存储空间。Tempdb数据库是一个临时的系统数据库,用于为所有临时表、临时存储过程以及其他的临时操作提供存储空间。
3.数据库中的常用完整性有几种?在Sql Server主要通过什么方式实现?
答:视图是一个虚拟表,并不存储任何物理数据。视图与真正的表很类似,也是由一组命名的列和数据行组成,其内容由查询所定义。但是视图并不是以一组数据形式存储在数据库中,数据库中只存储视图的定义,而不存在视图中的数据,视图中的数据仍存储在基本表中。当基本表中的数据发生变化时,从视图中查询出来的数据也随之改变。视图和表相比有独特的优势主要有以下几个方面:(1)保证数据的安全。(2)简化查询操作。(3)保证数据的逻辑独立性。
三、应用题(共6题,本题共54分。)
1.创建名为“Love”的数据库,其中主数据文件为Lovedat.mdf,初始大小为8M,增长大小为1M,日志文件为Lovedat.ldf,初始大小是5M,最大存储空间是30M,增长是5M。请写出相应的SQL语句。(本题8分)Create database love on
log on(name=lovedat_log,filename='d:databaselovedat.ldf',size=5,Maxsize=30,filegrowth=5)
2.使用sql语句创建表authors,结构如下表所示(本题8分)列名 数据类型
N 大小
是否为空
姓名
默认值 说明
authorID int 4
编号(主键),自动增长
电话 地址(name=lovedat,filename='d:databaselovedat.mdf',size=8,Maxsize=unlimited,filegrowth=1)
authorName nvarchar 50 N Phone nvarchar 13 Y address nvarchar 255 Y
create table authors(authorid int identity(1,1)primary key not null, authorname nvarchar(50)not null,phone nvarchar(13)null, address nvarchar(255))
3.使用SQL语句对2中创建的authors表进行如下修改:(每小题5分,共15分)(1)添加Sex 列 char(2),city列 varchar(20)。
alter table authors add sex char(2)null,city nvarchar(20)null;(2)删除city列。
alter table authors drop column city(3)修改作者信息表authors中的address列将该列的属性的长度更改为500。alter table authors alter column address nvarchar(500)not null 4.系部表的创建语句如下,请完成以下操作(每小题5分,共15分)CREATE TABLE 系部
(系部代码 char(2)CONSTRAINT pk_xbdm PRIMARY KEY, 系部名称 varchar(30)NOT NULL,系主任 char(8))(1)将系部表中计算机系的系主任改为‘张中裕’
Update 系部 set 系主任=’ 张中裕’
where 系部名称=’计算机系’
(2)将系部表中的系部名称列中的‘系’全部更改为‘科学系’(使用replace函数,用法:replace(串1,串2,串3),其功能是将串1中的串2 替换为串3)Update 系部 set 系部名称=replace(系部名称,’系’,’科学系’)(3)在系部表中删除系主任姓‘张’的系部数据
Delete from 系部 where 系主任 like ‘张%’
5.有二个数据表XS(xh, xm)和XS_KC(xh, kch, cj),用两种方法,写出如下查询:“查找数据库中所有学生的学号(xh)、姓名(xm)以及其所选修的课程号(kch)和成绩(cj)”。(本题8分)
.(1)select xs.xh,xm,kch,cj from xs, xs_kc where xs.xh=xs_kc.xh;(2)select xs.xh,xm,kch,cj from xs join xs_kc on xs.xh=xs_kc.xh;
四、编程题(共2题,每题5分,共10分)
1.在数据表上机记录中创建一个名为insert_sjkh的insert触发器其作用是:当用户在“上机记录”表中插入记录时,若“上机卡”表中没有该上机号,则提示用户不能插入,否则,提示记录插入成功。(附:上机记录表结构:(上机号 char(13),上机日期 datetime,开始时间 datetime,结束时间 datetime,上机状态 bit)。上机卡表结构:(上机号 char(13),姓名„„)
Create trigger insert_sjkh on dbo.上机记录 for insert As begin Declare @asjkh char(13)Declare @acount int Select @asjkh=上机号from inserted Select @acount=count(*)from 上机卡where 上机号=@asjkh If @acount=0
Print '上机卡中无此卡号,不能插入' Else
Print '数据插入成功'
end
2.在student数据库中的学生、课程注册、课程表中创建一个带参的存储过程cjcx。其功能是:当任意输入一个学生的姓名时,返回该学生的学号、选修的课程名和课程成绩。然后使用存储过程,查询学生“陈斌”的学号、选修的课程名和课程成绩。Create PROCEDURE [dbo].[cjcx]
AS BEGIN SELECT 学生.学号,课程.课程名,课程注册.成绩 from
学生,课程,课程注册
where 学生.学号=课程注册.学号 and 课程注册.课程号=课程.课程号 and 姓名=@axm END 执行存储过程cjcx,查询“周红瑜”的学号、选修的课程名和课程成绩。Exec cjcx @axm=’张斌’ @axm char(8)