2023年8月3日发(作者:)
SQL Server 数据库技术期末考试题目及答案
一、单选题 1. Microsoft 公司的 SQL Server2000 数据库管理系统一般只能运行于( ) 。
A. Windows 平台 B. UNIX 平台 C. LINX 平台 D. NetWare 平台 2. 当一条 SELECT
语句访问一张大表里的有限几行数据时,SQL Server2000 通常会 ( ) 。 A. 为数据加上页级锁 B. 为数据加上行级锁 C. 需要用户的干涉和参与 D. 使用户独占数据库 3. 当采用 Windows 认证方式登录数据库服务器时,SQL Server2000 客户端软件会向操 作系统请求一个( ) 。 A. 信任连接 B. 邮件集成 C. 并发控制 D. 数据转换服务 4. 以下对 SQL Server2000 描述不正确的是( ) 。 A. 支持 XML B. 支持用户自定义函数 C. 支持邮件集成 D. 支持网状数据模型 5. 如果在 SQL Server2000
上运行一个非常大的数据库,为取得较好效果应选用安装 ( ) 。 A. 企业版 B. 标准版 C. 个人版 D. 开发版 6. 提高 SQL Server2000 性能的最佳方法之一是( ) 。
A. 增大硬盘空间 B. 增加内存 C. 减少数据量 D. 采用高分辨率显示器 7. SQL
Server2000 标准版不支持的操作系统是( ) 。 A. Windows 2000 Server B. Windows NT
Server C. Windows98 D. Windows 2000 Advanced Server 8. 如果希望完全安装 SQL
Server2000,则应选择( ) 。 A. 典型安装 B. 最小安装 C. 自定义安装 D. 仅连接
9. 要想使 SQL Server2000 数据库管理系统开始工作,必须首先启动( ) 。 A. SQL
Server 服务器 B. 查询分析器 C. 网络实用工具 D. 数据导入和导出程序 10. 用于配置客户端网络连接的工具是( ) 。 A. 企业管理器 B. 客户端网络实用工具 C. 查询分析器 D. 联机帮助文档 11. SQL Server2000 的物理存储主要包括 3 类文件( ) 。
A. 主数据文件、次数据文件、事务日志文件 B. 主数据文件、次数据文件、文本文件 C.
表文件、索引文件、存储过程 D. 表文件、索引文件、图表文件 12. 当数据库损坏时,数据库管理员可通过何种方式恢复数据库( ) 。 A. 事务日志文件 B. 主数据文件 C.
DELETE 语句 D. 联机帮助文件 13. SQL Server2000 系统中的所有系统级信息存储于哪个数据库( ) 。 A. master B. model C. tempdb D. msdb 14. 下面关于 tempdb 数据库描述不正确的是( ) 。 A. 是一个临时数据库 B. 属于全局资源 1 C. 没有权限限制 D. 是用户建立新数据库的模板 15. Transact-SQL 对标准 SQL 的扩展主要表现为( ) 。 A. 加入了程序控制结构和变量 B. 加入了建库和建表语句 C. 提供了分组(Group By)查询功能 D. 提供了 Min、Max 等统计函数 16. 语句“USE master GO
SELECT * FROM sysfiles GO”包括( )个批处理。 A. 1 B. 2 C. 3 D.4 17. SQL Server2000
的字符型系统数据类型主要包括( ) 。 A. int、money、char B. char、varchar、text C.
datetime、binary、int D. char、varchar、int 18. 如果要在 SQL Server2000 中存储图形图像、Word 文档文件,不可采用的数据类型 是( ) 。 A. binary B. varbinary C. image
D. text 19. 下面关于 Timestamp 数据类型描述正确的是: ( ) 。 A. 是一种日期型数据类型 B. 是一种日期和时间组合型数据类型 C. 可以用来替代传统的数据库加锁技术 D. 是一种双字节数据类型 20. 使用“CREATE DATABASE AAA”命令所建立数据库文件的初始大小是( )字节。 A. 1M B. 2M C. 3M D. 4M 21. 下面关于索引的描述不正确的是( ) 。 A. 索引是一个指向表中数据的指针 B. 索引是在元组上建立的一种数据库对象 C. 索引的建立和撤消对表中的数据毫无影响 D. 表被撤消时将同时撤消在其上建立的索引 22. 以下哪种情况应尽量创建索引( ) 。 A. 在 where 子句中出现频率较高的列 B. 具有很多 NULL 值的列 C. 记录较少的基本表 D. 需要更新频繁的基本表 23. 下面关于聚集索引和非聚集索引说法正确的是( ) 。 A. 每个表只能建立一个非聚集索引 B. 非聚集索引需要较多的硬盘空间和内存 C. 一张表上不能同时建立聚集和非聚集索引 D. 一个复合索引只能是聚集索引 24. “Create Unique Index AAA On 学生表(学号) ”将在学生表上创建名为 AAA 的 ( ) 。 A. 惟一索引 B. 聚集索引 C. 复合索引 D. 唯一聚集索引 25. SQL Server2000 提供的单行注释语句是使用( )开始的一行内容。 A. “/*” B. “--” C. “ {” D. “/” 26. 下列标识符可以作为局部变量使用( ) 。 A. [@Myvar] B. My var C. @Myvar D. @My var 27.
Transact-SQL 支持的程序结构语句中的一种为( ) 。 2 A. Begin…End B.
If…Then…ELSE C. Do Case D. Do While 28. 不属于 SQL Server2000 系统全局变量的是( ) 。 A. @@Error B. @@Connections C. @@Fetch_Status D. @Records 29. 属于事务控制的语句是( ) 。 A. Begin Tran、Commit、RollBack B. Begin、Continue、End C.
Create Tran、Commit、RollBack D. Begin Tran、Continue、End 30. SQL Server2000 触发器主要针对下列语句创建( ) 。 A. SELECT、INSERT、DELETE B. INSERT、UPDATE、DELETE C. SELECT、UPDATE、INSERT D. INSERT、UPDATE、CREATE 31.
下列 SQL Server2000 语句中出现语法错误的是( ) 。 A. DECLARE @Myvar INT B.
SELECT * FROM [AAA] C. CREATE DATABASE AAA D. DELETE * FROM AAA 32.
索引是在基本表的列上建立的一种数据库对象, 它同基本表分开存储, 使用它能够 加快数据的( )速度。 A. 插入 B. 修改 C. 删除 D. 查询 二、填空题 1. SQL Server2000
采用 源。 __________ 计算模型,通过中央服务器集中存储数据资 2. SQL Server2000
数据库应用的处理过程分布在 ____ 和服务器上。 3. SQL Server2000 服务器可以被多台客户机访问,数据库服务器仅返回客户端应用程 序所需要的数据,这样做的好处是可以减少 ____ 。 4. SQL Server2000 提供了动态的自我管理机制,能够自动增大或缩小数据库所占用的 ______ 。 5.在网络环境下,当多个用户同时访问数据库时,就会产生并发问题,SQL Server2000 是利用 ________ 完成并发控制的。 6. SQL
Server2000 与 Windows 2000 等操作系统完全集成,可以使用操作系统的用户 和域账号作为数据库的 ____ 。 7. SQL Server2000 采用的结构化查询语言称为 ______ 。 8.
常见的 SQL Server2000 的版本一般包括 、 、 、开发版和 评估版等。 9. 安装 SQL
Server2000 时需要以本地 _______身份登录操作系统。 10. 如 果 在 Windows
NT/2000 上 安 装 SQL Server2000 , 需 要 事 先 设 置 至 少 一 个 ______ 。
11. 默认情况下,SQL Server2000 服务器的名字为 。 、 __ 服 12. SQL Server2000 服务管理器程序的主要作用是启动、 __ 3 务器。 操 13. 在网络多用户环境下,在停止
SQL Server2000 服务之前,最好先执行 作。 14. SQL Server2000 将数据组织成用户可以看见的逻辑组件,而在磁盘上则作为 ____实现。 15. 常用的数据库对象主要包括缺省、约束、用户、图表、用户自定义数据类型、 、 __ 、 __ 、 __ 等。 ________ 、
__ 16. SQL Server2000 主数据文件、次数据文件和事务日志文件默认的扩展名分别
为 、 和 。 17. SQL Server2000 的数据库分为____________和 ____ 两种类型。 18.
每个 SQL Server2000 数据库下都包括 、 、 和 四 个系统数据库。 系统数据库主要用来进行复制、作业调度和管理报警等活动。 19. 20. SQL Server2000 客户机传 递到服务器上的一组完 整的数据 和 SQL 语句称为 __ 。 21. 一般可以使用 命令来标识 Transact-SQL 批处理的结束。 的 22. SQL Server2000 中的数据类型通常是指字段列、存储过程参数和 ____ 数据特征。 23. varchar 数据类型可以自动去掉字段或变量尾部的 __ 以节省空间。 24. SQL Server2000 的 datetime 和 smalldatetime 数据类型主要用来存储________和 ________的组合数据。 25. 在 SQL Server2000 中,通常使用________数据类型来表示逻辑数据。 26. 函数 LEFT(‘abcdef’,2)的结果是 。 27. SQL
Server2000 规定了 2 种类型的标识符,即____________和____________。 28. SQL
Server2000 中 的 整 数 类 型 包 括 __________ 、 __________ 、 __________ 和
__________四种。 29. SQL Server2000 中的整数类型分别为 bigint、int、smallint 和 tinyint,它们分 别占用______、______、______和______个存储字节。 30. SQL
Server2000 中的数据类型主要包括________、________、________、二进制、 位和双字节等类型。 31. SQL Server2000 提供的最常用的管理工具是______________和______________。 32. 在 SQL Server2000 中主要是通过使用______________运行
Transact-SQL 语句。 33. 如果希望修改数据库的名字,可以使用的系统存储过程是 。
34. SQL Server2000 主要通过查询分析器和____________这两种工具来完成数据库的
管理工作。 35. 数 据 库 备 份 和 恢 复 的 Transact-SQL 语 句 分 别 是
____________________ 和 __________________。 36. 在一个已存在数据的表中增加不带默认值的列,一定要保证所增加的列允许 ________值。 37. 对表中记录的维护工作主要有增加、 ________和________操作, 它们均可通过企业 管理器或
Transact-SQL 语句完成。 38. 在 Transact-SQL 语句中需要把日期时间型数据常量用__________括起来。 39. 找回被删除表的惟一方法是事先做好数据库的 工作。 语 40.
可以将视图理解为存储在 SQL Server2000 数据库中的一条经过预编译的 4 句。 是一种常用的改善数据库性能的技术。 41. 42. SQL Server2000 中引入索引主要是为了加速________速度,也可保证数据的惟一 性。 43. 索引可以加速 selcet 语句中 Order
By 和____________选项的执行速度。 44. 索引一经创建就完全由 SQL Server2000 系统 选择和维护。 45. 索引会影响对基本表的________、________和________等操作的速度。 46. 从是否改变基本表记录的物理位置角度可将索引分为__________和__________索 引两类。 47. 聚集索引与非聚集索引相比,查询速度更 。 48. 注释是一些说明性的文字,而不是 语句,不参与程序的编译。 和 。 49. SQL Server2000 支持两种形式的变量,即 50. 一个局部变量的使用范围局限于一个 内, 即两个 GO 语句之间的那一部 分。 51. SQL Server2000 中为局部变量赋值的语句是 和 。 52. 触发器是一种特殊的 ,基于表而创建,主要用来保证数据的完整性。 53. 使 用 create
database 命 令 定 义 一 个 数 据 库 , 包 括 定 义 __________ 文 件 和
__________文件两个部分。 54. 使用 create database 命令定义一个数据库,定义其数据文件以关键字________ 开始,定义日志文件以关键字________开始。 55. 修改数据库定义的命令关键字为________________, 删除整个数据库的命令关键字 为________________。 56. 在 SQL Server2000 中,打开一个数据库使之成为当前库,有________种方法,其 中之一使用的命令关键字为_______。 57. 索引可以由系统根据约束条件自动建立,也可以由用户通过命令或菜单方式建立, 但它的________和_______将根据需要由系统自动实现,无须用户过问。 58. 索引是在基本表的列上建立的一种数据库对象, 它同基本表分开存储, 使用它将降 低数据的________、________、_________速度。 59. 基本表中的记录数越______, 每条记录占用的字节数越______时, 使用索引就越有 利。 60. 创 建 索 引 的 命 令 关 键 字 为
________________ , 删 除 索 引 的 命 令 关 键 字 为 ________________。 61.
在索引命令中使用关键字 CLUSTERED 或 NOCLUSTERED 分别表示将建立的是________ 或________索引。 62. 在基本表的某个列上建立索引,可以使基本表中的所有记录按该列值的________ 或________排列。 63. 当指定基本表中某一列或若干列为主码时,则系统将在这些列上自动建立一个 ________、________和________的索引。 64.
当指定基本表中某一列或若干列为 UNIQUE 约束时,则系统将在这些列上自动
________一个唯一值________。 65. 若规定基本表中某一列或若干列为非空和唯一值双重约束, 则这些列就是该基本表 的________码,若只规定为唯一值约束,则__________空值重复出现。 66. 在 SQL Server2000 中,通常不需要用户建立索引,而是通过使用________约束和 ________约束,由系统自动建立索引。 5 68. 单行或行尾注释的开始标记为________, 多行注释的开始标记为________, 结束标 记为________。 68. 局部变量的开始标记为______,全局变量的开始标记为________。 69.
每条________语句能够同时为多个变量赋值, 每条________语句只能为一个变量赋
值。 70. 定义局部变量的语句关键字为__________,被定义的各变量之间必须用________ 字符分开。 71. 在 SQL Server2000 中,每个程序块的开始标记为关键字__________,结束标记为 关键字________。 72. 在 SQL Server2000 中,前后相邻的语句之间可以使用________、________或 ________字符分开。 73. 在 SQL Server2000
中,CASE 结构是一个________,只能作为一个________使用在 另一个语句中。 74. 在
SQL Server2000 中, CASE 函数具有______种格式, 每种格式中可以带有________
个 WHEN 选项,可以带有______个 ELSE 选项。 75. 在条件结构的语句中,关键字
IF 和 ELSE 之间和 ELSE 之后,可以使用________语 句,也可以使用具有____________格式的语句块。 76. 在循环结构的语句中, 当执行到关键字__________后将终止整个语句的执行, 当执 行到关键字__________后将结束一次循环体的执行。
77. 声明游标语句的关键字为________________,该语句必须带有__________子句。 78.
打开和关闭游标的语句关键字分别为________和________。 79. 判断使用 FETCH 语句读取数据是否成功的全局变量为________________。 80. 使用游标对基本表进行修改和删除操作的语句中,WHERE 选项的格式为“WHERE __________ OF
____________。 81. 每次执行使用游标的取数、 修改或________操作的语句时, 能够对表中的________ 个记录进行操作。 82. 在 SQL Server2000 中,一个事务是一个__________的单位,它把必须同时执行或 不执行的一组操作________在一起。 83. 在
SQL Server2000 中,一个事务处理控制语句以关键字________________开始, 以关键字________________或________________结束。 84. 每个存储过程可以包含________条 Transact-SQL 语句,可以在过程体中的任何地 方使用__________语句结束过程的执行,返回到调用语句后的位置。 84. 建立一个存储过程的语句关键字为________________, 执行一个存储过程的语句关 键字为____________。 86. 在一个存储过程定义的 AS 关键字前可以定义该过程的________,AS 关键字之后为 该过程的__________。 87. 触发器是一种特殊的存储过程,它可以在对一个表上进行________、________和 ________操作中的任一种或几种操作时被自动调用执行。 88.
创建和删除一个触发器的语句关键字为________________和________________。 89.
在一个表中最多只能有一个关键字为_____________的约束, 关键字为 FOREIGN
KEY 的约束可以出现________次。 90. CHECK 约束被称为________约束,UNIQUE
约束被称为__________约束。 91. 使用一种约束时,可以使用关键字_____________和标识符____________的选项命 名该约束,也可以省略该选项由系统自动命名,因为用户很少再使用其约束名。 6 92. 当一个表带有约束后, 执行对表的各种________操作时, 将自动________相应的约 束,只有符合约束条件的合法操作才能被真正执行。 93.
在 SQL Server2000 中 , 数 据 库 的 安 全 机 制 分 为 4 个 等 级 , 分 别 为
客 户 端 ____________的安全、数据库的________安全、数据库使用安全和数据库对象的使用安全。 94. 数据库的安全管理问题归结为对________和________的管理问题。
95. 要 访 问 SQL Server2000 数 据 库 服 务 器 , 用 户 必 须 提 供 正 确 的
__________ 和 __________。 96. 对用户授予和收回数据库操作的语句关键字分别为__________和__________。 97. 在授予用户访问权限的语句中, 所给表名选项以关键字________开始, 所给用户名 选项以关键字________开始。 98. 在收回用户访问权限的语句中, 所给表名选项以关键字________开始, 所给用户名 选项以关键字________开始。 99. 使用游标取数和释放游标的语句关键字分别为____________和____________。 三、写出下列每条语句或程序段的功能 假设存在名为 AAA 的数据库,包括 Students(学号 char(8),姓名 varchar(8),年龄 课程名 varchar(10), int, 专业 varchar(20), 入学日期 DateTime) Score 学号 char(8), 和 ( 成绩 numeric(5,2))两张表。 1. SELECT * FROM Students WHERE DATEPART(year,入学日期)
=DATEPART(year,GETDATE()) 2. DECLARE @MyNO CHAR(8) SET
@MyNO='20030001' IF (SELECT 专业 FROM Students WHERE 学号=@MyNO)='计算机软件' BEGIN SELECT AVG(成绩) AS 平均成绩 FROM Score WHERE 学号=@MyNO END ELSE PRINT '学号为' +@MyNO+'的学生不存在或不属于软件专业' GO
3. declare @a numeric(5,2) set @a=(select avg(成绩) from score) select * from score where
成绩>=@a 4. declare @a numeric(5,2),@b numeric(5,2) set @a=(select max(成绩) from
score) set @b=(select min(成绩) from score) print @a-@b 7 5. declare @a char(6) set @a='刘亮' if(exists(select * from students where 姓名=@a)) print '姓名为'+@a+'的同学存在!'
else print '姓名为'+@a+'的同学不存在!' 6. declare @a char(8) set @a='计算机' select 计算机专业人数=count(*) from students where left(专业,3)=@a 7. select year(入学日期) as 入学年份,count(*) as 人数 from students group by year(入学日期) 8. select month(入学日期)
as 入学月份,count(*) as 人数 from students group by month(入学日期) 9. select day(入学日期) as 入学日号,count(*) as 人数 from students group by day(入学日期) 10. create
procedure xxk1 as begin select * from students x,score y where x.学号=y.学号 end
procedure xxk2 as begin select x.学号,x.姓名,x.专业,count(*) as 门数 from students
x,score y where x.学号=y.学号 group by x.学号,x.姓名,x.专业 end procedure
xxk3 8 as begin select 学号,avg(成绩) as 平均成绩 from score group by 学号 end
procedure xxk4 ( @a char(8),@b varchar(10),@c numeric(5,2) ) as begin update
score set 成绩=@c where 学号=@a and 课程名=@b end procedure xxk5 ( @a
char(8),@b varchar(10),@c numeric(5,2) ) as begin insert into score values(@a,@b,@c) end
procedure xxk6 ( @a char(8),@b varchar(10) ) as begin delete from score where
学号=@a and 课程名=@b end @a char(8),@b varchar(10),@c numeric(5,2)
declare @d int set @d=0 declare xxx cursor for select 学号,课程名,成绩 from score 9 open
xxx fetch xxx into @a,@b,@c while @@fetch_status=0 begin set @d=@d+1 fetch from xxx
into @a,@b,@c end close xxx deallocate xxx print @d e @a char(8),@b
varchar(10),@c numeric(5,2) declare xxx cursor for select 学号,课程名,成绩 from score
open xxx fetch xxx into @a,@b,@c while @@fetch_status=0 begin print @a+replicate(' ',3)
+@b+str(@c)+replicate(' ',3) +(case when when when else end ) fetch from end close xxx
deallocate xxx @c>=90 then '优秀' @c>=70 then '良好' @c>=60 then '及格' '不及格' xxx
into @a,@b,@c e @c numeric(5,2) declare @c1 int, @c2 int, @c3 int, @c4 int set
@c1=0; set @c2=0; set @c3=0; set @c4=0 declare xxx cursor for select 成绩 from score
open xxx fetch xxx into @c while @@fetch_status=0 begin if(@c>=90) set @c1=@c1+1;
else if(@c>=70) set @c2=@c2+1; 10 else if(@c>=60) set @c3=@c3+1; else set
@c4=@c4+1 fetch from xxx into @c end close xxx deallocate xxx print print print print '优秀生人数:'+str(@c1,5); '良好生人数:'+str(@c2,5); '及格生人数:'+str(@c3,5); '及格生人数:'+str(@c4,5) e @a char(8),@b varchar(10) declare @c numeric(5,2) declare @d
int set @d=80 declare xxx cursor for select 学号,课程名,成绩 from score open xxx fetch
xxx into @a,@b,@c while @@fetch_status=0 begin if(@c>=@d) print @a+replicate('
',3)+@b+str(@c,5) fetch from xxx into @a,@b,@c end close xxx deallocate xxx e
@a char(8),@b varchar(10),@c numeric(5,2) declare @s char(8),@r varchar(10) set @s='20030001' set @r='数学' set @c=84 declare xxx cursor for select 学号,课程名 from
score open xxx fetch xxx into @a,@b while @@fetch_status=0 begin if(@a=@s and
@b=@r) update score set 成绩=@c where current of xxx fetch from xxx into @a,@b 11 end
close xxx deallocate xxx e @a char(8),@b varchar(10) declare @s char(8),@r
varchar(10) set @s='20030001' set @r='数学' declare xxx cursor for select 学号,课程名
from score open xxx fetch xxx into @a,@b while @@fetch_status=0 begin if(@a=@s and
@b=@r) begin delete from score where current of xxx break end fetch from xxx into @a,@b
end close xxx deallocate xxx 数据库, Transact四、根据下面所给的 AAA 数据库,按照下列每种功能写出相应的 Transact-SQL 语句或 程序段 假设使用名称为 AAA 的数据库,它包括 Students(学号 char(8),姓名 varchar(8), 年龄 int,专业 varchar(20),入学日期 DateTime)和 Score(学号 char(8),课程名 varchar(10),成绩 numeric(5,2))两张表。 1. 以“xxxx 年 xx 月 xx 日”的格式显示某日期时间型数据,假设字段名为
Mydate,存 于 Mytable 表中。 2. 将字符串’I am a student’以大写字母显示。 3. 从名字为“My Table”的表中查询出所有记录。 4. 将字符串’SOFTWARE’中的’SOFT’提取出来,并以小写形式显示出来。 5. 显示出该 Score 表中的全部数据,并要求当成绩为空时显示数值-1。 6. 显示出当前日期中的年份和月份数据。 7. 显示出 Students 表中所有学生记录的学号列的前四个字符。 8. 显示出一个整数 25 和当前日期 getdate()的值分别占用的字节数。 Transact语句或程序段。 五、按照下列每种功能写出相应的
Transact-SQL 语句或程序段。 假设使用名称为 AAA 的数据库,它包括 Students(学号 char(8),姓名 varchar(8), 年龄 int,专业 varchar(20),入学日期 DateTime)和 Score(学号 char(8),课程名 varchar(10),成绩 numeric(5,2))两张表。 12 1. 创建 AAA 数据库,所有参数取默认值。 2. 创建 Students 表。 3. 将 AAA 数据库的初始大小更改为 5MB,最大空间限定为 10MB。 4. 假设 Students 表中已存在大量学生记录,求所有“计算机软件”专业学生的平均年 龄,如果平均年龄大于 19 则显示“平均年龄超过
19” ,否则显示“平均年龄没有超过 19” 。 参考解答 一、单选题 1. A 2. B 9. A 10. B 17.
B 18. D 25. B 26. C 3. A 11. A 19. C 27. A 4. D 12. A 20. A 28. D 5. A 13. A 21. B 29. A 6. B
14. D 22. A 30. B 7. C 15. A 23. B 31. D 8. C 16. B 24. A 32. D 二、填空题 1. 客户机/服务器(或 C/S) 2. 客户机(或客户端) 3. 网络流量 4. 硬盘空间 5. 数据封锁机制 6. 注册账号(或登录账号) 7. Transact-SQL 8. 企业版、标准版、个人版 9. 系统管理员 10.
域用户账号 11. 本地计算机名 12. 暂停、停止 13. 暂停 14. 操作系统文件 15. 表、索引、视图、触发器、存储过程 16. mdf、ndf、ldf 17. 系统数据库、用户数据库 18. master、model、tempdb、msdb 19. msdb 20. 批处理 21. GO 22. 局部变量 23. 空格 24. 日期、时间 25. bit 26. ’ab’ 27. 常规标识符、分隔标识符 28. bigint int smallint tinyint 29. 8、4、2、1 30. 数值、字符、日期时间 31. 企业管理器 查询分析器 32. 查询分析器 33.
sp_renamedb 34. 企业管理器 35. Backup Database、Restore Database 36. Null(空) 37. 删除、修改 38. 单引号 39. 备份 40. SELECT 41. 索引 42. 查询 43. Group By 44. 自动
45. 插入、删除、修改 46. 聚集、非聚集 47. 快 48. 可执行 49. 局部变量、全局(系统)变量 50. 批处理 51. SELECT、SET 52. 存储过程 53. 数据、日志 54. ON、LOG ON
55. ALTER DATABASE、 DROP DATABASE 56. 2、USE 57. 打开、重建 58. 插入、修改、删除 59. 多、多 60. CREATE INDEX、DROP INDEX 13 61. 63. 65. 67. 69. 71. 73. 75.
77. 79. 81. 83. 84. 86. 88. 90. 92. 94. 96. 98. 聚集、非聚集 62. 升序、降序 非空、唯一、聚集 64. 建立(创建)、 索引 备用(侯选码)、不允许 66. 主码、唯一值 --、/*、*/ 68. @、@@ SELECT、SET SELECT、SET 70. DECLARE、逗号 BEGIN、END 72. 空格、分号、换行 函数、表达式 74. 2、多、一 单条、END 76. BREAK、CONTINUE DECLARE CURSOR、查询(或 SELECT) 78. OPEN、CLOSE @@FETCH_STATUS 80.
CURRENT、<游标名> 删除、单(一) 82. 并发控制、捆绑 BEGIN TRAN、COMMIT
[TRAN]、ROLLBACK [TRAN] 多、RETURN(返回) 85. CREATE PROC、EXEC 参数、
过程体 87. 插入(insert)、 删除(delete)、 更新(update, 或修改) CREATE TRIGGER、DROP TIRGGER 89. PRIMARY KEY、多 检查、唯一值 91. CONSTRAINT、<约束名>
更新、检查 93. 操作系统、登录 琐、钥匙 95. 登录帐号、口令(密码) GRANT、REVOKE 97. ON、TO ON、FROM 99. FETCH、DEALLOCATE 三、写出下列每条语句或程序段的功能 1. 从 Students 表中查询出所有当年(系统时间)入学的学生记录。 2.
首先定义一个名为@MyNo 的局部变量, 并给它赋初值, 如果@MyNo 属于计算机软件专 业,则显示出平均成绩,否则显示“学号为@MyNo 的学生不存在或不属于软件专业” 。 3. 从 score 表中查询出大于等于平均成绩的所有记录。 4. 求出 score 表中最高成绩与最低成绩的分数之差。 5. 从 students 表中查询姓名为@a 的值的同学是否存在,根据不同情况显示出相应信 息。 6. 从 students 表中统计出专业名开头为@a 的值(即“计算机” )的所有学生人数。 7. 从 students 表中分组统计出每个年份入学的学生人数。 8. 从 students 表中分组统计出每个月份入学的学生人数。 9. 从 students
表中分组统计出每个日号入学的学生人数。 10. 显示出 AAA 库中所有学生的记录信息及选课成绩 11. 显示出 AAA 库中每个学生的学号、姓名、专业等信息及选课门数
12. 显示出 AAA 库中每个学生的平均成绩 13. 修改 score 表中学号为@a 的值、课程名为@b 的值的学生的成绩为@c 的值。 14. 向 score 表中插入学号为@a 的值、课程名为@b 的值、成绩为@c 的值的学生成绩记 录。 15. 从 score 表中删除学号为@a 的值、课程名为@b 的值的学生成绩记录。 16. 从 score 表中统计并显示出记录总数 17. 显示出 score 表中每个成绩记录,并在每条记录最后给出优秀、良好、及格、不及 格等相应等级。 18. 从 score 表中按成绩统计并显示出优秀、良好、及格、不及格各多少人。 14 19. 显示出 score 表中成绩大于等于@d 值的所有记录。 20. 修改
score 表中学号为@a 的值、课程名为@b 的值的学生的成绩为@c 的值。 21. 从 score
表中删除学号为@a 的值、课程名为@b 的值的学生记录。 数据库, Transact四、根据下面所给的 AAA 数据库,按照下列每种功能写出相应的 Transact-SQL 语句或 程序段 1. SELECT DATEPART(year,Mydate) + ’年’ + DATEPART(month,Mydate) + ’月’ +
DATEPART(day,MyDate) + ’日’ FROM Mytable 2. SELECT UPPER(‘I am a student’) 3.
SELECT * FROM [My Table] 4. SELECT LOWER(LEFT(’SOFTWARE’,4)) 5. select 学号,课程名,isnull(成绩,-1) from Score 6. select year(getdate()),month(getdate()) 7. select left(学号,4) fron Students 8. select datalength(25),datalength(getdate()) Transact语句或程序段。
五、按照下列每种功能写出相应的 Transact-SQL 语句或程序段。 1. Create DataBase
AAA 2. create table students ( 学号 char(8) primay key, 姓名 varchar(8), 年龄 int, 专业
varchar(20), 入学日期 datetime ) 3. ALTER DATABASE AAA MODIFY FILE ( NAME =
AAA_data, SIZE = 5, MAXSIZE=10 ) 4. IF (Select Avg(年龄) From Students Where 专业=’计算机软件’)>19 SELECT ‘平均年龄超过 19’ ELSE SELECT ‘平均年龄没有超过 19’
15
二、SQL Server 2000 模拟试题 (一 ) 一、填空题(每空 1 分) 1、 数据管理经历了_______阶段、 ________阶段到________阶段的变迁。 (手工管理、文件管理、数据库管理) 2、实体之间联系的基本类型有_______、________、_______。(一对 一、一对多、多对多) 3、在 E-R 图中,用____表示实体,用______表示联系,用______表示 属性。(矩形框、菱 形框、椭圆框) 4、数据库的三层模式结构是________、_________、________。(外模 式、模式、内模式) 5、关系模型中一般讲数据完整性分为三类:_________、___________、 __________。 (实体完整性、参照完整性、用户定义完整性) 6、SQL Server 是一种支持___________体系结构的关系数据库管理系 统。(客户/服务器) 7、用来存储数据库数据的操作系统文件主要有两类:___________、
____________。 (数据文件、日志文件) 8、SQL Server 基本的数据存储的最小单位是______,其大小为 _____KB。(页、8) 9、Extent 是 SQL Server 在分配空间给_______、________的单位,每 个 Extent 为_____个 连续的数据页,相当于______KB
大小。 (数据表、 索引、8、64) 10、SQL Server 2000 的新特色之一就是 Multiple
Instances,一台物理计 算机上可以同时 执行____个实例的执行。(16) 11、
____________是一个逻辑上统一、地域上分布的数据集合。(分 布式数据库) 12、数据库的三级模式是指内模式、_______________、外模式。(模 式) 13、 _____是现实世界在人们头脑中的反映,是对客观事物其联系的 一种抽象描述(概念世界) 14、
数据模型由三部分组成:模型结构、数据操作、____________。 (完整性规则) 15、
一种数据模型的特点是:有且仅有一个根结点,根结点没有父结 点;其它结点有且 仅有一个不是父结点。则这种数据模型是 _________________。(层次模型)16、能唯一标识一个元组的属性或 属性组成为________________。(关键字) 17、SQL 语言一种标准的数据库语言, 包括查询、定义、操纵、_______ 四部分功能。(控制) 18、视图是从其它________________________或视图导出的表。(基本 表) 19、在关系模式 R
中,若属性或属性组 X 不是关系 R 的关键字,但 X 是其他关系模式的关键字,则称 X 为关系 R 的___________。 (外 关键字) 20、数据字典中的____________是不可再分的数据单位。(数据项) 21、在系统故障恢复中,将故障发生前已提交事务的标识记入________ 队列。(重做(或 REDO)) 22、客户机/服务器系统由服务器平台、客户平台和__________组成。 (连接支持) 23、PowerBuilder 中_________是最具特色的对象之一,利用此对象不 但能直接实现查询操作, 而且可以进行增、 删、 改操作。 (数据窗口 (或 DataWindow 或 DataWindows)) 二、单项选择题(在每小题的四个备选中,选出一个正确,并 将正确的序号填在题干的括号内。每小题 2 分) 1、一个仓库可以存放多种产品,一种产品只能存放于一个仓库中。仓 库与产品之间的联系类型是 A、一对一的联系 B、多对一的联系 C、一对多的联系 D、多对多的联系 :(C ) 2、概念数据模型依赖于那个数据库管理系统(D) A、DB2 B、MS SQL Server C、Oracle D、不依赖于任何数据库管理系统 3、以下论述中正确的是(A) A、多对多的联系总是可以转换成两个一对多的联系 B、ACCESS 是数据库管理系统 C、数据的三种范畴包括现实世界阶段、虚拟世界阶段、信息世界阶段 D、我们通常所说的数据仓库就是指数据仓库 4、以下那中情况不是连接陷阱产生原因(A) A、把多对多的联系转换为一对一的联系 B、把多对多的联系转换为一对多的联系 C、把原本的联系现在用实体表示 D、把原本的联系通过实体联系到一起 5、不属于传统数据模型的是(D) A、层次数据模型 B、网状数据模型 C、关系数据模型 D、面向对象数据模型 6、正确的论述是(A) A、自然连接和等值连接很相像,但实际上他们是不同的。自然连接要 去掉重复的属性,等值连接不需要去掉重复的属性。 B、一个关系是参照关系,那么就不会是被参照关系。 C、概念数据库与外部数据库都是物理存在的。 D、一个关系可以有一个或多个主关键字。 7、在 SQL Server
中,不是对象的是(B) A、用户 B、数据 C、表 D、数据类型 8、以下论述不正 确的是(D) A、distribution 数据库是系统数据库 B、企业管理器与查询分析器都是客户端工具 C、 SQL Server 2000 可以安装到 windows2000、 windows XP、 windows NT
系统上。 D、SQL Server 支持的 SQL 命令集称为 T_SQL,它是完全符合 ANSII
SQL92 标准的。 9、以下正确的论述是(C) A、在建立数据库的时候,SQL Server 是可以创建操作系统文件其目 录路径。 B、数据库中有一些 sys 开头的系统表,用来纪录 SQL Server 组件、对 象所需要的数据, 这些系统表全部存放在系统数据库中。
C、SYS 开头的系统表中的数据用户不能直接修改,但可以通过系统存 储过程、系统函数 进行改动、添加。 D、12AM 是中午,12PM 是午夜。 10、声明了变量:declare
@i int,@c char(4),现在为@i 赋值 10,为 @c 赋值'abcd', 正确的语句是(C) A、set @i=10,@c='abcd' B、set i=10 , set @c='abcd' C、select @i=10,@c='abcd' D、select @i=10,
select @c='abcd' 11、有如下代码,当代码中_[关键字]_分别为 break continue return 时,
最后的 print @n 输 出的值为(A) declare @n int set @n=3 while @n>0 begin set
@n=@n-1 if @n=1 _[关键字]_ end print @n A、1,0,不输出 B、1,1,1 C、0,0,0 D、0,1,2 12、不正确的论述是(C) A、 SQL Server 有 Windows 集成认证方式,但如果没有把 windows 用 户添加为 SQL Server 的 登陆账户,那么该 Windows 用户不能访问 Sql Server 服务器。 B、SQL Server 2000 的客户端没有操作系统的限制。
C、Windows2000 是个具有并行处理能力(支持多 CPU)的操作系统, 安装在之上的
SQL Server 2000 需要在实例的属性中设定使用当前的 CPU,否则只能使用默认的
CPU。 D、在 Windows 2000/NT 中,SQL Server 是以服务的方式被执行的。 13、关于 SQL Server 2000 安装命名实例时,不正确的描述是(B) A、最多只能用 16 个字符 B、实例的名称是区分大小写 C、第一个字符只能使用文字、@、_和#符号。 D、实例的名称不能使用 Default 或 MSSQLServer 这两个名字。 14、不是 SQL Server 服务器组件的是(D) A、升级工具(update Tools) B、复制支持(Replication Support)
C、全文搜索(Full-Text Search) D、Profiler 15、是长期存储在计算机内的有组织,可共享的数据集合. (C) A、数据库管理系统 B、数据库系统 C、数据库 D、文件组 织
16.数据库系统不仅包括数据库本身,还要包括相应的硬件,软件和(D). A、数据库管理系统 B、数据库应用系统 C、相关的计算机系统 D、各类相关人员 17.在文件系统阶段,数据(B) A、无独立性 B、独立性差 C、具有物理独立性 D、具有逻辑独立性 18.数据库系统阶段,数据(D) A、具有物理独立性,没有逻辑独立性 B、具有物理独立性和逻辑独立性 C、独立性差 D、具有高度的物理独立性和一定程度的逻辑 独立性
19. 属于信息世界的模型, 是现实世界到机器世界的一个中间层次. (B) A、数据模型 B、概念模型 C、E-R 图 C、关系模型 20.数据库系统软件包括 DBMS 和(D)
A、数据库 B、高级语言 C、OS D、数据库应用系统和开发工具 21.在 SQL 语言中授权的操作是通过(C)语句实现的。 A、CREATE B、REVOKE C、GRANT D、INSERT
22.数据库中只存放视图的(C) A、操作 B、对应的数据 C、定义 D、限制 23.概念结构设计阶段得到的结果是(B) A、数据字典描述的数据需求 B、E-R 图表示的概念模型 C、某个 DBMS 所支持的数据模型 D、包括存储结构和存取方法的物 理结构 24.一个 m:n 联系转换为一个关系模式。关系的码为(B) A、某个实体的码 B、各实体码的组合 C、n 端实体的码 D、任意一个实体的码 24、现有关系:学生(学号,姓名,课程号,系号,系名,成绩),为消 除数据冗余,至少需要分解为(C ) A 1 个表 B 2 个表 C 3 个表 D 4 个表 25、已知职工和职工亲属两个关系,当职工调出时,应该从职工关系中 删除该职工的元组,同时在职工亲属关系中删除对应的亲属元组,在 SQL 语言中,定义这个完整性约束的短语是(D ) A ON DELETE ALL B ON
DELETE RESTRICT C ON DELETE SET NULL D ON DELETE CASCADE 26、DBMS
中的检查点机制用于(B ) A 检查事务的故障 B 减少故障恢复的时间 C 检查数据库一致 性状态 D 检查数据库的完整性 27.有两个关系 R 和 S,分别包含 15 个和
10 个元组,则在 R∪S,R-S, R∩S 中不可能出现的元组 数目情况是(B ) A 15,5,10 B 18,7,7 C 21,11,4 D 25,15,0 28.授予用户 Jean 可以查询帐户表的权限,使用的 SQL 语句是( A ) A GRANT SELECT ON 帐户 TO Jean B GRANT SELECT
TO Jean ON 帐户 C GRANT SELECT TO 帐户 ON Jean D GRANT SELECT ON Jean
TO 帐户 29.已知实体 A 中有 15 个实例(一个实例相当于一行),实体 B 中有 50 个实例。若实体 A 中的一个 实例,最多与实体 B 中的 10 个实例相关,最少与实体 B
中 2 个实例相 关,则实体 A 的基数是(B) A (1,15) B (2,10) C (2,50)
C (15,50) 30.如下不能正确执行的语句是(D) A、select * from table_name where
1>2 B、truncate table table_name C、delete from table_name where null=null D、alter table
table_name add column idd int 三、简答题(每小题 6 分) 1、数据库的基本特征。 答:1)相互关联的数据的集合 2)用综合的方法组织数据,保证尽可能的提高访问效率; 3)具有较小的数据冗余,可以供多个用户共享; 4)具有较高的数据独立性; 5)具有安全控制机制,能保证数据的安全、可靠; 6)允许并发的使用,能有效的、时地处理数据,并能保证数据的一 致性和完整性。 2、数据库管理系统的功能。 答:1)数据库定义功能; 4)数据库的控制功能; 2)数据库的操纵功能; 5)数据库的通信功能。
3)数据库的查询功能; 3、数据库的通信功能。数据库的通信功能。三层客户/服务器模型的优 点。 答:1)可重复使用; 2)性能改善; 3)易于管理; 4)易于维护。 4、试比较文件系统和数据库系统的特点? 答:文件系统和数据库系统所处理的数据都可长期保存,反复操作。文 件系统中文件内部具有结构,但数据文件之间的联系无法定义;数据库 系统既可结构化局部数据,也可定义全局的数据结构。文件系统的应用 程序与数据之间有了一定的独立性;而 数据库系统通过两方面的映象 功能,使数据具有物理独立性和逻辑独立性。文件系统的数据共享性较 差冗余度高,数据是面向程序的;数据库系统的数据是面向全局的,共 享性好,冗余 度低。数据库系统的数据由 DBMS
统一管理和控制,有较 好地控制数据安全性、完整型、并发 管理、数据库恢复等。 5、DBA 的主要职责是什么? 答:数据库管理员(DBA)负责全面和控制数据库系统,其主要 职责有: 设计与定义数据库系统;帮助最终用户使用数据库系统; 监督与控制数据库系统的使用和运行;转储与恢复数据库; 改进和重组数据库系统,调优数据库系统的性能;重构数据库。 6、简述关系的性质? 答:① 同一列中的分量是同一类型的数据。 不同列可以取相同的 数据类型。 ② 关系中的列又称为属性,并赋予属性名。不同列的属性名不 同。 ③ 列的次序可以任意交换。 ④ 任意两个元组不能完全相同。 ⑤ 行的次序可以任意交换。⑥ 列具有原子性, 即每一列值是不 可分的数据项 7、数据依赖对关系模式的影响? 答:数据依赖是通过一个关系中属性间值的相等与否体现出来的数 据间的相互关系。它是现实 世界属性间相互联系的抽象,是数据内在 的性质,是语义的体现。函数依赖是数据依赖的一种 类型。部分函数 依赖、传递函数依赖会导致关系模式中的更新异常、插入异常、删除异 常、数据冗余等问题。 8、试述数据库设计的基本步骤。 答: (1)需求分析阶段:需求收集和分析,得到数据字典和数据流图。 (2)概念结构设计阶段:对用户需求综合、归纳与抽象,形成概念模 型,用 E-R 图表示。 (3)逻辑结构设计阶段:将概念结构转换为某个 DBMS 所支持的数据 模型。 (4)数据库物理设计阶段:为逻辑数据模型选取一个最适合应用环境 的物理结构。 (5)数据库实施阶段:建立数据库,编制与调试应用程序,组织数据 入库,程序试运行。 (6)数据库运行和维护阶段:对数据库系统进行评价、调整与修改。 四、判断题(对的打√,错的打×):每题 1 分 1、安装 Microsoft SQL Server
2000 企业版对操作系统的最低要求可以 是 Microsoft Windows 2000 Professional。(×)
2、每一个服务器必须属于一个服务器组。一个服务器组可以包含 0 个. 一个或多个服务器(√) 3、认证模式是在安装 SQL Server 过程中选择的。系统安装之后,可以 重新修改 SQL Server 系统的认证模式。(×) 4、在创建表时,不能指定将表放在某个文件上,只能指定将表放在某 个文件组上。如果希望将某个表放在特定的文件上,那么必须通过创建 文件组来实现。(√ ) 5、当用户定义的数据类型正在被某个表的定义引用时,这些数据类型 不能被删除。(√ ) 6、在使用子查询时,必须使用括号把子查询括起来,以便区分外查询 和子查询。(√ ) 7、索引越多越好。(×) 8、视图本身没有数据,因为视图是一个虚拟的表。(√) 9、 创建触发器的时候可以不是表的所有者或数据库的所有者。(×) 10、 输入正确的所有者口令, 才可以修改 DTS 包的定义和执行 DTS 包。 如果只输入用户口令,那么只能执行 DTS 包,不能修改该 DTS
包的定 义。(√ ) 五、分析以下问题的实体之间的关系,并画出 E-R 图(每题 5 分)
1、一名研究生可以选修多门课程,一名导师可以讲授多门课,一名导 师可以带多名学生,一名学生只能有一名导师。 参考:研究生与课程 :1:N 导师与课程 : 1:N 导师与学生 : 1:N 2、一名顾客可以发出多次订购单进行订货,一张订单上面可以定购多 个商品,一张订购单只能属于一名顾客,一种商品可以被不同的定购单 定购。
参考:顾客 与 订购单 : 1:N 订购单 与 商品 : M:N 六、已知有学生关系
S(SNO,SNAME,AGE,DNO),各属性含义依 次为学号,姓名、年龄和所在 系号;学生选课关系 SC(SNO,CNO, SCORE),各属性含义依次为学号、课程号和成绩。
分析以下 SQL 语句: SELECT SNO FROM SC WHERE SCORE= (SELECT MAX(SCORE) FROM SC WHERE CNO=’002’) 请问上述语句完成了什么查询操作? 答:找出选修’002’课程 成绩最好 的学生的学号 。 七、操作题(每题 4 分) 有一个“学生-课程”数据库,数据库中包括三个表: (1) “学生”表 Student 由学号(Sno)、姓名(Sname)、性别(Ssex)、 年龄(Sage)、 所在系(Sdept)五个属性组成,可记为:
Student(Sno,Sname,Ssex,Sage,Sdept) Sno 为关键字。 (2) “课程”表 Course 由课程号
(Cno)课程名 、 (Cname)先修课号 、 (Cpno) 、 学分 (Ccredit) 四个属性组成, 可记为: Course(Cno,Cname,Cpno,Ccredit) Cno 为关键字。 (3) “学生选课”表 SC
由学号(Sno)、课程号(Cno)、成绩(Grade) 三个属性组成, 可记为: SC(Sno,Cno,Grade)
(SNO, CNO) 为关键字。 完成下列操作: 1、建立一个“学生”表 Student,它由学号 Sno、姓名 Sname、性别 Ssex、 年龄 Sage、 所在系 Sdept 五个属性组成,其中学号属性不能为空,并 且其值是唯一的。 2、查询全体学生的详细记录 3、查询年龄在 20 至 23
岁之间的学生的姓名、系别、和年龄 4、计算 1 号课程的学生平均成绩 5、将计算机科学系全体学生的成绩置零 参考: 1、CREATETABLE Student (Sno CHAR(5) NOT
NULL UNIQUE,Sname CHAR(20), Ssex CHAR(1), Sage INT, Sdept CHAR(15)); 2、SELECT * FROM Student; 3、SELECT Sname, Sdept, Sage FROM Student WHERE Sage
BETWEEN 20 AND 23; 4、SELECT AVG(Grade) FROM SC WHERE Cno='1'; 5、UPDATE
SC SET Grade=0 WHERE ‘CS’= ( SELECT Sdept FROM Student WHERE
=); 模拟试题( SQL Server 模拟试题(六) 班级: _______ 姓名:
_______ 学号: _______ 成绩: _______ 一、 填空题( 20*2 分 ) 1.E-R 数据模型一般在数据库设计的 _______ 阶段使用。概念设计阶段 1. 2. 根据模型应用目的的不同,数据模型可以分为两类:一类是 _________,是按用户的观点来对数 据和信息进行抽象;另一类是_________,是按计算机的观点建模。概念模型、结构数据模型 3.
构数据模型直接描述数据库中数据的逻辑结构,常用的结构数据模型有 _________,_________, _________,_________。层次模型、网状模型、关系模型、面向对象模型
4. 命令 truncate table 的功能是_______________。清空数据库 5. 数据完整性 是指存储在数据库中的数据正确无误并且相关数据具有一致性, 根据完整性机制所作 用的数据库对象和范围不同,可以分为: _________,_________,_________,_________四种, 其中主键可以实现_________完整性。实体完整性、值域完整性、引用完整性、值域完整性、实体 完整性 6. 模糊查询符号 % 代表 _______ ,查询条件 e%im 代表意思是 _______ 。任意字符 查询以 e 开 头中间任意字符(串) im 结尾的字符串 7. 使用索引可以减少检索时间,根据索引的存储结构不同将其分为两类: _________和_________。 簇集索引、非簇集索引 8. SQL server 中的变量分为两种,全局变量和局部变量。其中全局变量的名称以_________字符开 始,有系统定义和维护。局部变量以_________字符开始,由用户自己定义和赋值。@@ 、 @ 9. 实现数据完整性的途径有
_______ 、 _______ 、 _______ 、 _______ 等。约束 默认 规则 存 储过程等 选择题 (10*2 分)? 二、 1、 下面仅存在于服务器端的组件是: )A ( A、服务管理器 B、企业管理器组件 C、查询分析器组件 D、导入导出组件 2、下面描述错误的是( ) 。B A 每个数据文件中有且只有一个主数据文件。 B 日志文件可以存在于任意文件组中。 C 主数据文件默认为 primary 文件组。 D 文件组是为了更好的实现数据库文件组织。 3、下面标志符不合法的是: ) ( 。C A、[my delete] B、_mybase C、$money
D、trigger 4、下面字符串能与通配符表达式[ABC] _ a 进行匹配的是: ) ( 。C A、BCDEF B、A_BCD C、ABa D、A%a 5、下面是合法的 smallint 数据类型数据的是: 。C () A、223.5 B、32768 C、-32767 D、58345 6 、关系数据模型 _______ 。D A 只能表示实体间的 1 : 1 联系 B 只能表示实体间的 1 : n 联系 C 只能表示实体间的 m : n 联系 D 只能表示实体间的上述 3 种联系 7 数据库概念模式产生于数据库系统设计的 _______ 阶段。C A 、规划 B 、需求分析 C 、概念设计 D 、逻辑设计
8 、 客观存在的各种报表、图表和查询格式等原始数据属于 _______ 。B A 、机器世界 B 、信息世界 C 、现实世界 D 、模型世界 9、SQL server 数据库文件有三类,其中主数据文件的后缀为:C A、.ndf B、.ldf C、.mdf D、.idf 10 、下列语句中正确的是 _______ 。表 score(sti_id,names,math,English,VB) B A select stu_id,sum(math) from
score B select sum(math),avg(VB) from score C select * ,sum(english) from score D delete *
from score 三、简答题。 (10 分) 1、简述视图的意义和优点? 2、 试述如何有效的保护数据库的安全? 四、综合应用题。 30 分) ( 学生选课系统,主要表有:学生基本信息表(学号、姓名、性别、专业、出生年月等) ,选课表(学号、课 程号、分数) ,课程表(课程号、课程名、所属专业、学分) 要求: 1、用 E-R 图表示上述关系的概念模型。 分) (5 3、写出 SQL 语句。 1) 查询所有选 SQL 课程的学生学号,姓名和专业。(5 分) 2) 删除所有选择数学的同学的选课记录。(5 分) 3) 查询有哪些课程没有被任何同学报选。(5 分) 4、创建存储过程。(10 分) 1)、能够查询出选修任何课程的学生信息相应的分数。 2)、以表格的形式返回本课程的平均分数。 模拟试题( SQL Server 模拟试题(四) 班级: _______ 姓名: _______ 学号: _______ 成绩:
_______ 一、填空题( 30*1 分) 1. 根据模型应用目的的不同,数据模型可以分为两类:一类是 _________ ,是按用户的观点来对 数据和信息进行抽象;另一类是
_________ ,是按计算机的观点建模。概念模型,结构数据模型 2. 结构数据 模型直接 描述数 据 库中数据 的逻辑结 构,常 用 的结构数 据模型有 _________ ,
_________ , _________ , _________ ,其中 SQL 数据库是基于 _________ 建立的。 层次模型、网状模型、关系模型、面向对象模型,关系模型 3.从操作系统的角度来看, SQL 具有 _________ 的特点,减少了多用户访问的时间。____________ 是一
种无须扫描整张表就能实现对数据的快速访问的途径。SQL server 使用 ____________
记载用户对数据库 进行的所有操作。在给数据库改名之前,必须设置数据库处于
____________ 状态。sp_help 系统存储过 程的功能是 ___________________ 。 单进程多线程 索引 日志文件 单用户 显示数据对象的相关属性 4 数据完整性实质,存储在数据库中的数据正确无误并且相关数据具有一致性,根据完整性机制所作用的 数据库对象和范围不同,可以分为: _________ , _________ , _________ , _________
四种,其中 标志列可以实现 _________ 数据完整性。 实体完整性、值域完整性、引用完整性、值域完整性,实体完整性 语言中行注释的符号为 _________ ;块注释的符号为 _________ 。____________ 是将用户组成一 个集体授权的单一单元。
--、/* */ 角色 6.为了实现安全性,每个网络用户在访问 SQL server 数据库之前,都必须经过两个阶段的检验: _________ 和 _________ 。身份验证、权限验证
7._________ 是 SQL 程序中最小的工作单元,要么成功完成所有操作;要么就是失败,并将所作的一切还 原。事务 server 中的变量分为两种,全局变量和局部变量。其中全局变量的名称以 _________ 字符开始, 有系统定义和维护。局部变量以
_________ 字符开始,由用户自己定义和赋值。还原是指将数据库备份加 载到服务器中的过程,在 SQL server 中有三种数据库的还原模型,分别是 _________ ,
_________ , _________ 。@@ , @ 简单还原 , 完全还原,批日志还原 是指 __________________ 。数据转换服务 二、选择题 (10*2 分 ) 1. 下面存在于服务器端的组件是: 。A () A 、服务器组件 B 、企业管理器组件 C 、查询分析器组件 D 、导入导出组件 2 、下面描述错误的是( ) 。B A、 每个数据文件中有且只有一个主数据文件。 B、 日志文件可以存在于任意文件组中。 C、 主数据文件默认为 primary 文件组。 D、 文件组是为了更好的实现数据库文件组织。 3 、 SQL server
数据库文件有三类,其中主数据文件的后缀为:C A 、 .ndf B 、 .ldf C 、 .mdf D 、 .idf
4 、下面标志符不合法的是: ) ( 。C A 、 [my delete] B 、 _mybase C 、 $money
D 、 trigger1 5 、下面对索引的相关描述正确的是: ) ( 。C A、 经常被查询的列不适合建索引。 B、 列值唯一的列适合建索引。 C、 有很多重复值的列适合建索引。
D、 是外键或主键的列不适合建索引。 6 、下列说法中正确的是:D A 、 SQL 中局部变量可以不声明就使用 B 、 SQL 中全局变量必须先声明再使用 C 、 SQL 中所有变量都必须先声明后使用 D 、 SQL 中只有局部变量先声明后使用;全局变量是由系统提供的用户不能自己建立。 7 、下面字符串能与通配符表达式 [ABC]%a 进行匹配的是: 。C () A 、 BCDEF B 、 A_BCD C 、 ABC_a D 、 A%a 8 、下面是合法的 smallint 数据类型数据的是: ) ( 。C A 、 223 . 5 B 、 32768 C 、 -32767
D 、 58345 9 、下面对 union 的描述正确的是() 。D 任何查询语句都可以用 union
来连接 union 只连接结果集完全一样的查询语句 union 是筛选关键词,对结果集再进行操作。 union 可以连接结果集中数据类型个数相同的多个结果集。 10 、 print round
( 998.88 , 0 ),round(999.99,-1)结果是:C A 、 999.00 , 990.00 B 、 999.00 , 1000.00
C 、 998.00 , 1000.00 D 、 999.00 , 999.99 三、简答题。 (10 分 ) 简述常用的连接数据库的三种方法?答: ODBC OLE DB ADO 四、综合应用题。 学生选课系统,主要表有:学生基本信息表(学号、姓名、性别、专业、出生年月等) ,选课表(学号、课 程号、分数) ,课程表(课程号、课程名、所属专业、学分)要求: 1 、用 E-R
图表示上述关系的概念模型。 7.5 分) ( 2 、用表的形式表示每张表的关系模式。 (7.5
分 ) 3 、写出 SQL 语句。 1) 查询所有选 SQL 课程的学生学号,姓名和专业。 (5 分 )
2) 删除所有选择数学的同学的选课记录。 (5 分 ) 3) 查询有哪些课程没有被任何同学报选。 (5 分 ) 4 、创建存储过程。 (10 分 ) 1) 、能够查询出选修任何课程的学生信息相应的分数。 2) 、以表格的形式返回本课程的平均分数。 综合题略 <
不固定,主要看编程思路 > 模拟试题( SQL Server 模拟试题(九) 一、 选择题:(20 分)
1、根据关系数据基于的数据模型——关系模型的特征判断下列正确的一项: (___) A、只存在一对多的实体关系,以图形方式来表示。 B、以二维表格结构来保存数据,在关系表中不允许有重复行存在。 C、能体现一对多、多对多的关系,但不能体现一对一的关系。 D、关系模型数据库是数据库发展的最初阶段。 2、在“连接”组中有两种连接认证方式,其中在(___)方式下,需要客户端应 用程序连接时提供登录时需要的用户标识和密码。 A、Windows 身份验证 B、SQL Server 身份验证 C、以超级用户身份登录时 D、其他方式登录时 3、SQL Server 2000 在安装之前,应注意的事项:(___) A、SQL Server 2000 的任何版本在安装时都不用考虑操作系统的制约。 B、SQL Server 2000 的安装对硬件的要求不作任何限制。 C、SQL Server 2000 在安装之前,必须在操作系统级启用 TCP/IP。 D、在 Windows NT Server 4.0 上安装 SQL
Server 2000 时,最低的要求是必须 安装 Service Pack 4(SP4)以上。 4、关系数据库中,主键是(1___),主键的建立有(2___)种方法,当运用 Transact-SQL 语句创建主键时,可以是(3___)。 ⑴ A、为标识表中唯一的实体 B、创建唯一的索引,允许空值 C、只允许以表中 第一字段建立 D、允许有多个主键的 ⑵ A、一 B、二 C、三 D、四 ⑶
A、create table table1(column1 char(13) not null primary,column2 int not) on primary; B、alter table table1 with notcheck add constraint [PK_table1] primary key nonclustered
( column1) on primary; C、alter table table1 column1 primary key ; 5、表在数据库中是一个非常重要的数据对象,它是用来(1___)各种数据内容 的,数据库创建后就可以创建表了,创建表可以用(2___)等方法来创建。 ⑴ A、显示 B、查询 C、存放 D、检索 ⑵ A、企业管理器 B、查询分析器 C、OSQL D、企业管理器和 CREATE TABLE
语 句 6、为数据表创建索引的目的是(1___),可以在创建表时用(2___)来创建唯 一索引,也可以用(2___)来创建唯一索引。 ⑴ A、提高查询的检索性能 B、创建唯一索引 C、创建主键 D、归类 ⑵ A、设置主键约束,设置唯一约束 B、Create table,Create
index C、设置主键约束,Create indexD、以上都可以 7、 在 Transact-SQL 语法中,用来插入数据的命令是(___),用于更新的命令 是(___)。 A、INSERT,UPDATE B、UPDATE,INSERT C、DELETE,UPDATE D、CREATE,INSERT INTO 8、在 Transact-SQL
语法中,SELECT 语句的完整语法较复杂,但至少包括的部 分(1___),使用关键字(2___)可以把重复行屏蔽,将多个查询结果返回一个 结果集合的运算符是(3___),如果在 SELECT 语句中使用集合函数时,一定在 后面使用(4___)。 ⑴ A、SELECT,INTO B、SELECT,FROMC、SELECT,GROUP D、仅 SELECT ⑵ A、DISTINCT B、UNIONC、ALL C、TOP ⑶ A、JOIN B、UNIONC、INTO C、LIKE ⑷ A、GROUP BY
B、COMPUTE BYC、HAVING D、COMPUTE 9、视图是一种常用的数据对象,它是提供(1___)和(1___)数据的另一种途径, 可以简化数据库操作,当使用多个数据表来建立视图时,表的连接不能使用 (2___)方式,并且不允许在该语句中包括(3___)等关键字。 ⑴ A、查看,存放 B、查看,检索 C、插入,更新 D、检索,插入 ⑵ A、外连接 B、内连接 C、左连接 D、右连接 ⑶ A、ORDER BY,COMPUTE B、ORDER
BY,COMPUTE,COMPUTR BY C、ORDER BY,COMPUTE BY,GROUP BY D、GROUP BY,COMPUTE BY 10、 SQL SERVER 服务器上, 在 存储过程是一组预先定义并 (1___) Transact-SQL 的 语句。可以用(2___)来声明游标。 ⑴ A、保存 B、编译 C、解释 D、编写 ⑵ A、CREATE CURSOR B、ALTER CURSOR C、SET CURSOR
D、DECLARE CURSOR 二、 填空题:(20 分) 1、 更改 Microsoft SQL Server 登录的密码的命令是_______________,举例 说明其语法格式:_____________________________________。 2、 Windows NT 授权认证模式只适用于________________________平台,对于 Windows95/98 操作系统下的 SQL Server 系统将不适用。 3 、 SQL Server 中 索 引 类 型 包 括 的 三 种 类 型 分 别 是
_________________,_________________和____________________。 4、 在 SELECT 语句的 FROM 子句中最多可以指定_______个表或视图,相互之间 要 用 ________ 分 隔 , 当 所 查 询 的 表 不 在 当 前 数 据 库 时 , 可 用
___________________________格式来指出表或视图对象。 5、 服务器网络实用工具的目的_________________________________。 6、 在当 SQL SERVER 实例中有 DBOA
数据库,要将它设置成为单用户状态,请写 出设置命令:___________________________________________。 7、 删除表命令是:___________________________________________。 8、 用 SELECT 进行模糊查询时,可以使用_________或________匹配符,但要在 条件值中使用____或____等通配符来配合查询。并且,模糊查询只能针对字段类 型是_________的查询。 9、 计算字段的累加和的函数是:_______,统计项目数的函数是:________。 10、SQL SERVER 中的编程语言就是_____________________________语言。三、 三、判断题(10 分) 1、在 CREATE INDEX 语句中,使用 CLUSTERED 来建立簇索引。( ) 2、可以在企业管理器中修改数据库的名称。( ) 3 、 恢 复 数 据 , 可 以 在 查 询 分 析 器 中
使 用 这 样 的 命 令 : BACKUP DATABASE database_name FROM backup ( ) 4、在查询分析器中修改帐户时可以用系统存储过程 Sp_modibaccess。( ) 5、每个存储过程向调用方返回一个整数返回代码。如果存储过程没有显式设置 返回代码的值,则返回代码为 0,表示成功。 6、在 Transact-SQL 语句中,对不符合所有标识符规则的标识符必须进行分隔。 7、在 SQL SERVER 中,触发器的执行是在数据的插入、更新或删除之前执行的。 8、在 Transact-SQL 语句的 WHERE 子句中,完全可以用 IN 子查询来代替 OR 逻 辑表达式。 9、通配符“_”表示某单个字符。 10、因为通过视图可以插入、修改或删除数据,因此视图也是一个实在表,SQL SERVER 将它保存在
syscommens 系统表中。 四、 简答题:(20 分) 1、 写出关系型数据库的第一、第二、第三标准形式的各自要求。 2、 触发器的类型以相对的语句命令? 3、 自定义函数的类型?各自原返回值。 4、 用户权限的种类有哪些?各自的作用? 五、 分析编码题(20 分) 1、 请使用 Transact-SQL 建立如下表:表名:雇员基本信息表;字段名 数据 类型 宽度 精度 可空性 要求 NO_ID CHAR 7 NOT NULL 设为主键
NAME CHAR 10 NOT NULLSEX CHAR 2 NOT NULL 默认值为”男”AGE INT NOT
NULL DEPT VARCHAR 50 NULLPHONE VARCHAR 20 NULLNOTES VARCHAR 50
NULL 2、 现有 1 销售表,它们结构如下:id int (标识号)codno char(7) (商品编
码)codname varchar(30) (商品名称)spec varchar(20) (商品规格)price numeric(10,2) (价格)sellnum int (销售数量)deptno char(3) (售出分 店编码) selldate datetime (销售时间) 要求: 写出查询销售时间段在 2002-2-15 日到 2002-4-29 之间,分店编码是 01 的所有记录。 3、 在 table1 数据表中增加“No_id”字段,数据类型 char(12),不可空,并 将其设定为 UNIQUE 约束,写出其命令语句。 六、 编程填空题:(10 分)填写出下列触发器中缺少的关键字,使下面语句完 整 : if update([lcostprice])update
[b_drug_data] set [scostprice] = ((select [lcostprice] from inserted ____________
[codno],[lcostprice],[scostprice]________ {b_drug_} = [])/(select
[fsco] from [b_drug_data] __________ [codno],[fsco] _________ [b_drug_] =
(select [codno] from inserted group by [codno])))where [b_drug_] ___ (select
[codno] from * 试题参考 一、 选择题:(20 分)注:每个选空 1 分 1、B,2、B,3、C,4、⑴ A,⑵C,⑶B,5、⑴C,⑵D,6、⑴A,⑵C7、A,A 8、 ⑴B,⑵A,⑶B,⑷A,9、⑴A,⑵A,⑶B,10、⑴B,⑵D 二、 填空题:(20 分)注:每空 1 分
1、 Sp_password,sp_password “12345”,”54321”,”abc” 2、 Windows NT 3、 唯一索引,簇索引,非簇索引 4、 256,逗号,”数据库.所有者名称.对象名称” 5、 为客户端网络实用工具提供参数。 6、 sp_dboption ‘DBOA’,’single use’,’true’ 7、 drop table 8、 like,not like,”%”,”_”,字符 9、 Sum(),Count() 10、TranSact_SQL 三、 判断题:(10 分,每题
1 分) 1、√ 2、× 3、× 4、× 5、√ 6、√ 7、× 8、× 9、√ 10、× 四、 简答题:(20 分,1、2 题每题 5 分) 1、 ①第一标准形式:由原子值和主键值组成,数据表中的每一个字段都不可以 再分。 (同一数据表中同类字段不允许重复出现,在一个字段内也不允许放置多 个数据项)②第二标准形式:要求所有的非关键字段完全依赖于主键。(或类似 的解释)③第三标准形式:每一个非主键字段列中没有可传递的的依赖性。(一 个非主键列不能依赖于另一个非主键列) 2、 类型:①INSERT 触发器、②UPDATE 触发器、③DELETE 触发器相对应的语句: ①INSERT 语句、②UPDATE 语句、③DELETE 语句 2、 自定义函数类型:①标量函 数 返回值:单个数据值②内嵌表值函数 返回值:table,③多语句表值函数 返 回值:table4、 权限类型作用:①对象权限 作用:决定用户对数据库对象所 执行的操作,包括用户对数据库中的表、视图、列或存储过程等对象的操作权限 ②语句权限 作用:决定用户能否操作数据库和创建数据库对象③隐含权限 作 用:控制那些只能由预定义系统角色的成员或数据库对象所有者执行的活动。 五、(20 分,1 题 10 分,2 题 5 分,3 题 5 分) 1、(中的英语单词不允许错误,男字只能用单引号括起来,否则不给分;) CREATE TABLE 雇员基本信息表——————————2 分 (NO_ID char(7) not null primary
key,—————————2 分 NAME char(10) not
null,———————————————1 分 SEX char( 2) not null default
‘男’,———————————2 分 AGE int not
null,——————————————————1 分 DEPT varchar(50)
null,————————————————1 分 PHONE varchar(20)
null,———————————————0.5 分 NOTES varchar(50)
null———————————————0.5 分) 2、(中的英语单词不允许错误,日期要用引号括起来,否则不给分) SELECT * FROM 销 售 表 WHERE (selldate >=
'2002-2-15' AND selldate <='2002-4-29')AND deptno = '01'3、(中的大写单词不允许错误,其他不 作 要 求 )ALTER TABLE table1 ADD No_id CHAR(12) NOT NULL
CONSTRAINT table1_unique UNIQUE 六、 (每空 2 分,共 10 分)GROUP BY,HAVING,GROUP BY,HAVING,IN
2023年8月3日发(作者:)
SQL Server 数据库技术期末考试题目及答案
一、单选题 1. Microsoft 公司的 SQL Server2000 数据库管理系统一般只能运行于( ) 。
A. Windows 平台 B. UNIX 平台 C. LINX 平台 D. NetWare 平台 2. 当一条 SELECT
语句访问一张大表里的有限几行数据时,SQL Server2000 通常会 ( ) 。 A. 为数据加上页级锁 B. 为数据加上行级锁 C. 需要用户的干涉和参与 D. 使用户独占数据库 3. 当采用 Windows 认证方式登录数据库服务器时,SQL Server2000 客户端软件会向操 作系统请求一个( ) 。 A. 信任连接 B. 邮件集成 C. 并发控制 D. 数据转换服务 4. 以下对 SQL Server2000 描述不正确的是( ) 。 A. 支持 XML B. 支持用户自定义函数 C. 支持邮件集成 D. 支持网状数据模型 5. 如果在 SQL Server2000
上运行一个非常大的数据库,为取得较好效果应选用安装 ( ) 。 A. 企业版 B. 标准版 C. 个人版 D. 开发版 6. 提高 SQL Server2000 性能的最佳方法之一是( ) 。
A. 增大硬盘空间 B. 增加内存 C. 减少数据量 D. 采用高分辨率显示器 7. SQL
Server2000 标准版不支持的操作系统是( ) 。 A. Windows 2000 Server B. Windows NT
Server C. Windows98 D. Windows 2000 Advanced Server 8. 如果希望完全安装 SQL
Server2000,则应选择( ) 。 A. 典型安装 B. 最小安装 C. 自定义安装 D. 仅连接
9. 要想使 SQL Server2000 数据库管理系统开始工作,必须首先启动( ) 。 A. SQL
Server 服务器 B. 查询分析器 C. 网络实用工具 D. 数据导入和导出程序 10. 用于配置客户端网络连接的工具是( ) 。 A. 企业管理器 B. 客户端网络实用工具 C. 查询分析器 D. 联机帮助文档 11. SQL Server2000 的物理存储主要包括 3 类文件( ) 。
A. 主数据文件、次数据文件、事务日志文件 B. 主数据文件、次数据文件、文本文件 C.
表文件、索引文件、存储过程 D. 表文件、索引文件、图表文件 12. 当数据库损坏时,数据库管理员可通过何种方式恢复数据库( ) 。 A. 事务日志文件 B. 主数据文件 C.
DELETE 语句 D. 联机帮助文件 13. SQL Server2000 系统中的所有系统级信息存储于哪个数据库( ) 。 A. master B. model C. tempdb D. msdb 14. 下面关于 tempdb 数据库描述不正确的是( ) 。 A. 是一个临时数据库 B. 属于全局资源 1 C. 没有权限限制 D. 是用户建立新数据库的模板 15. Transact-SQL 对标准 SQL 的扩展主要表现为( ) 。 A. 加入了程序控制结构和变量 B. 加入了建库和建表语句 C. 提供了分组(Group By)查询功能 D. 提供了 Min、Max 等统计函数 16. 语句“USE master GO
SELECT * FROM sysfiles GO”包括( )个批处理。 A. 1 B. 2 C. 3 D.4 17. SQL Server2000
的字符型系统数据类型主要包括( ) 。 A. int、money、char B. char、varchar、text C.
datetime、binary、int D. char、varchar、int 18. 如果要在 SQL Server2000 中存储图形图像、Word 文档文件,不可采用的数据类型 是( ) 。 A. binary B. varbinary C. image
D. text 19. 下面关于 Timestamp 数据类型描述正确的是: ( ) 。 A. 是一种日期型数据类型 B. 是一种日期和时间组合型数据类型 C. 可以用来替代传统的数据库加锁技术 D. 是一种双字节数据类型 20. 使用“CREATE DATABASE AAA”命令所建立数据库文件的初始大小是( )字节。 A. 1M B. 2M C. 3M D. 4M 21. 下面关于索引的描述不正确的是( ) 。 A. 索引是一个指向表中数据的指针 B. 索引是在元组上建立的一种数据库对象 C. 索引的建立和撤消对表中的数据毫无影响 D. 表被撤消时将同时撤消在其上建立的索引 22. 以下哪种情况应尽量创建索引( ) 。 A. 在 where 子句中出现频率较高的列 B. 具有很多 NULL 值的列 C. 记录较少的基本表 D. 需要更新频繁的基本表 23. 下面关于聚集索引和非聚集索引说法正确的是( ) 。 A. 每个表只能建立一个非聚集索引 B. 非聚集索引需要较多的硬盘空间和内存 C. 一张表上不能同时建立聚集和非聚集索引 D. 一个复合索引只能是聚集索引 24. “Create Unique Index AAA On 学生表(学号) ”将在学生表上创建名为 AAA 的 ( ) 。 A. 惟一索引 B. 聚集索引 C. 复合索引 D. 唯一聚集索引 25. SQL Server2000 提供的单行注释语句是使用( )开始的一行内容。 A. “/*” B. “--” C. “ {” D. “/” 26. 下列标识符可以作为局部变量使用( ) 。 A. [@Myvar] B. My var C. @Myvar D. @My var 27.
Transact-SQL 支持的程序结构语句中的一种为( ) 。 2 A. Begin…End B.
If…Then…ELSE C. Do Case D. Do While 28. 不属于 SQL Server2000 系统全局变量的是( ) 。 A. @@Error B. @@Connections C. @@Fetch_Status D. @Records 29. 属于事务控制的语句是( ) 。 A. Begin Tran、Commit、RollBack B. Begin、Continue、End C.
Create Tran、Commit、RollBack D. Begin Tran、Continue、End 30. SQL Server2000 触发器主要针对下列语句创建( ) 。 A. SELECT、INSERT、DELETE B. INSERT、UPDATE、DELETE C. SELECT、UPDATE、INSERT D. INSERT、UPDATE、CREATE 31.
下列 SQL Server2000 语句中出现语法错误的是( ) 。 A. DECLARE @Myvar INT B.
SELECT * FROM [AAA] C. CREATE DATABASE AAA D. DELETE * FROM AAA 32.
索引是在基本表的列上建立的一种数据库对象, 它同基本表分开存储, 使用它能够 加快数据的( )速度。 A. 插入 B. 修改 C. 删除 D. 查询 二、填空题 1. SQL Server2000
采用 源。 __________ 计算模型,通过中央服务器集中存储数据资 2. SQL Server2000
数据库应用的处理过程分布在 ____ 和服务器上。 3. SQL Server2000 服务器可以被多台客户机访问,数据库服务器仅返回客户端应用程 序所需要的数据,这样做的好处是可以减少 ____ 。 4. SQL Server2000 提供了动态的自我管理机制,能够自动增大或缩小数据库所占用的 ______ 。 5.在网络环境下,当多个用户同时访问数据库时,就会产生并发问题,SQL Server2000 是利用 ________ 完成并发控制的。 6. SQL
Server2000 与 Windows 2000 等操作系统完全集成,可以使用操作系统的用户 和域账号作为数据库的 ____ 。 7. SQL Server2000 采用的结构化查询语言称为 ______ 。 8.
常见的 SQL Server2000 的版本一般包括 、 、 、开发版和 评估版等。 9. 安装 SQL
Server2000 时需要以本地 _______身份登录操作系统。 10. 如 果 在 Windows
NT/2000 上 安 装 SQL Server2000 , 需 要 事 先 设 置 至 少 一 个 ______ 。
11. 默认情况下,SQL Server2000 服务器的名字为 。 、 __ 服 12. SQL Server2000 服务管理器程序的主要作用是启动、 __ 3 务器。 操 13. 在网络多用户环境下,在停止
SQL Server2000 服务之前,最好先执行 作。 14. SQL Server2000 将数据组织成用户可以看见的逻辑组件,而在磁盘上则作为 ____实现。 15. 常用的数据库对象主要包括缺省、约束、用户、图表、用户自定义数据类型、 、 __ 、 __ 、 __ 等。 ________ 、
__ 16. SQL Server2000 主数据文件、次数据文件和事务日志文件默认的扩展名分别
为 、 和 。 17. SQL Server2000 的数据库分为____________和 ____ 两种类型。 18.
每个 SQL Server2000 数据库下都包括 、 、 和 四 个系统数据库。 系统数据库主要用来进行复制、作业调度和管理报警等活动。 19. 20. SQL Server2000 客户机传 递到服务器上的一组完 整的数据 和 SQL 语句称为 __ 。 21. 一般可以使用 命令来标识 Transact-SQL 批处理的结束。 的 22. SQL Server2000 中的数据类型通常是指字段列、存储过程参数和 ____ 数据特征。 23. varchar 数据类型可以自动去掉字段或变量尾部的 __ 以节省空间。 24. SQL Server2000 的 datetime 和 smalldatetime 数据类型主要用来存储________和 ________的组合数据。 25. 在 SQL Server2000 中,通常使用________数据类型来表示逻辑数据。 26. 函数 LEFT(‘abcdef’,2)的结果是 。 27. SQL
Server2000 规定了 2 种类型的标识符,即____________和____________。 28. SQL
Server2000 中 的 整 数 类 型 包 括 __________ 、 __________ 、 __________ 和
__________四种。 29. SQL Server2000 中的整数类型分别为 bigint、int、smallint 和 tinyint,它们分 别占用______、______、______和______个存储字节。 30. SQL
Server2000 中的数据类型主要包括________、________、________、二进制、 位和双字节等类型。 31. SQL Server2000 提供的最常用的管理工具是______________和______________。 32. 在 SQL Server2000 中主要是通过使用______________运行
Transact-SQL 语句。 33. 如果希望修改数据库的名字,可以使用的系统存储过程是 。
34. SQL Server2000 主要通过查询分析器和____________这两种工具来完成数据库的
管理工作。 35. 数 据 库 备 份 和 恢 复 的 Transact-SQL 语 句 分 别 是
____________________ 和 __________________。 36. 在一个已存在数据的表中增加不带默认值的列,一定要保证所增加的列允许 ________值。 37. 对表中记录的维护工作主要有增加、 ________和________操作, 它们均可通过企业 管理器或
Transact-SQL 语句完成。 38. 在 Transact-SQL 语句中需要把日期时间型数据常量用__________括起来。 39. 找回被删除表的惟一方法是事先做好数据库的 工作。 语 40.
可以将视图理解为存储在 SQL Server2000 数据库中的一条经过预编译的 4 句。 是一种常用的改善数据库性能的技术。 41. 42. SQL Server2000 中引入索引主要是为了加速________速度,也可保证数据的惟一 性。 43. 索引可以加速 selcet 语句中 Order
By 和____________选项的执行速度。 44. 索引一经创建就完全由 SQL Server2000 系统 选择和维护。 45. 索引会影响对基本表的________、________和________等操作的速度。 46. 从是否改变基本表记录的物理位置角度可将索引分为__________和__________索 引两类。 47. 聚集索引与非聚集索引相比,查询速度更 。 48. 注释是一些说明性的文字,而不是 语句,不参与程序的编译。 和 。 49. SQL Server2000 支持两种形式的变量,即 50. 一个局部变量的使用范围局限于一个 内, 即两个 GO 语句之间的那一部 分。 51. SQL Server2000 中为局部变量赋值的语句是 和 。 52. 触发器是一种特殊的 ,基于表而创建,主要用来保证数据的完整性。 53. 使 用 create
database 命 令 定 义 一 个 数 据 库 , 包 括 定 义 __________ 文 件 和
__________文件两个部分。 54. 使用 create database 命令定义一个数据库,定义其数据文件以关键字________ 开始,定义日志文件以关键字________开始。 55. 修改数据库定义的命令关键字为________________, 删除整个数据库的命令关键字 为________________。 56. 在 SQL Server2000 中,打开一个数据库使之成为当前库,有________种方法,其 中之一使用的命令关键字为_______。 57. 索引可以由系统根据约束条件自动建立,也可以由用户通过命令或菜单方式建立, 但它的________和_______将根据需要由系统自动实现,无须用户过问。 58. 索引是在基本表的列上建立的一种数据库对象, 它同基本表分开存储, 使用它将降 低数据的________、________、_________速度。 59. 基本表中的记录数越______, 每条记录占用的字节数越______时, 使用索引就越有 利。 60. 创 建 索 引 的 命 令 关 键 字 为
________________ , 删 除 索 引 的 命 令 关 键 字 为 ________________。 61.
在索引命令中使用关键字 CLUSTERED 或 NOCLUSTERED 分别表示将建立的是________ 或________索引。 62. 在基本表的某个列上建立索引,可以使基本表中的所有记录按该列值的________ 或________排列。 63. 当指定基本表中某一列或若干列为主码时,则系统将在这些列上自动建立一个 ________、________和________的索引。 64.
当指定基本表中某一列或若干列为 UNIQUE 约束时,则系统将在这些列上自动
________一个唯一值________。 65. 若规定基本表中某一列或若干列为非空和唯一值双重约束, 则这些列就是该基本表 的________码,若只规定为唯一值约束,则__________空值重复出现。 66. 在 SQL Server2000 中,通常不需要用户建立索引,而是通过使用________约束和 ________约束,由系统自动建立索引。 5 68. 单行或行尾注释的开始标记为________, 多行注释的开始标记为________, 结束标 记为________。 68. 局部变量的开始标记为______,全局变量的开始标记为________。 69.
每条________语句能够同时为多个变量赋值, 每条________语句只能为一个变量赋
值。 70. 定义局部变量的语句关键字为__________,被定义的各变量之间必须用________ 字符分开。 71. 在 SQL Server2000 中,每个程序块的开始标记为关键字__________,结束标记为 关键字________。 72. 在 SQL Server2000 中,前后相邻的语句之间可以使用________、________或 ________字符分开。 73. 在 SQL Server2000
中,CASE 结构是一个________,只能作为一个________使用在 另一个语句中。 74. 在
SQL Server2000 中, CASE 函数具有______种格式, 每种格式中可以带有________
个 WHEN 选项,可以带有______个 ELSE 选项。 75. 在条件结构的语句中,关键字
IF 和 ELSE 之间和 ELSE 之后,可以使用________语 句,也可以使用具有____________格式的语句块。 76. 在循环结构的语句中, 当执行到关键字__________后将终止整个语句的执行, 当执 行到关键字__________后将结束一次循环体的执行。
77. 声明游标语句的关键字为________________,该语句必须带有__________子句。 78.
打开和关闭游标的语句关键字分别为________和________。 79. 判断使用 FETCH 语句读取数据是否成功的全局变量为________________。 80. 使用游标对基本表进行修改和删除操作的语句中,WHERE 选项的格式为“WHERE __________ OF
____________。 81. 每次执行使用游标的取数、 修改或________操作的语句时, 能够对表中的________ 个记录进行操作。 82. 在 SQL Server2000 中,一个事务是一个__________的单位,它把必须同时执行或 不执行的一组操作________在一起。 83. 在
SQL Server2000 中,一个事务处理控制语句以关键字________________开始, 以关键字________________或________________结束。 84. 每个存储过程可以包含________条 Transact-SQL 语句,可以在过程体中的任何地 方使用__________语句结束过程的执行,返回到调用语句后的位置。 84. 建立一个存储过程的语句关键字为________________, 执行一个存储过程的语句关 键字为____________。 86. 在一个存储过程定义的 AS 关键字前可以定义该过程的________,AS 关键字之后为 该过程的__________。 87. 触发器是一种特殊的存储过程,它可以在对一个表上进行________、________和 ________操作中的任一种或几种操作时被自动调用执行。 88.
创建和删除一个触发器的语句关键字为________________和________________。 89.
在一个表中最多只能有一个关键字为_____________的约束, 关键字为 FOREIGN
KEY 的约束可以出现________次。 90. CHECK 约束被称为________约束,UNIQUE
约束被称为__________约束。 91. 使用一种约束时,可以使用关键字_____________和标识符____________的选项命 名该约束,也可以省略该选项由系统自动命名,因为用户很少再使用其约束名。 6 92. 当一个表带有约束后, 执行对表的各种________操作时, 将自动________相应的约 束,只有符合约束条件的合法操作才能被真正执行。 93.
在 SQL Server2000 中 , 数 据 库 的 安 全 机 制 分 为 4 个 等 级 , 分 别 为
客 户 端 ____________的安全、数据库的________安全、数据库使用安全和数据库对象的使用安全。 94. 数据库的安全管理问题归结为对________和________的管理问题。
95. 要 访 问 SQL Server2000 数 据 库 服 务 器 , 用 户 必 须 提 供 正 确 的
__________ 和 __________。 96. 对用户授予和收回数据库操作的语句关键字分别为__________和__________。 97. 在授予用户访问权限的语句中, 所给表名选项以关键字________开始, 所给用户名 选项以关键字________开始。 98. 在收回用户访问权限的语句中, 所给表名选项以关键字________开始, 所给用户名 选项以关键字________开始。 99. 使用游标取数和释放游标的语句关键字分别为____________和____________。 三、写出下列每条语句或程序段的功能 假设存在名为 AAA 的数据库,包括 Students(学号 char(8),姓名 varchar(8),年龄 课程名 varchar(10), int, 专业 varchar(20), 入学日期 DateTime) Score 学号 char(8), 和 ( 成绩 numeric(5,2))两张表。 1. SELECT * FROM Students WHERE DATEPART(year,入学日期)
=DATEPART(year,GETDATE()) 2. DECLARE @MyNO CHAR(8) SET
@MyNO='20030001' IF (SELECT 专业 FROM Students WHERE 学号=@MyNO)='计算机软件' BEGIN SELECT AVG(成绩) AS 平均成绩 FROM Score WHERE 学号=@MyNO END ELSE PRINT '学号为' +@MyNO+'的学生不存在或不属于软件专业' GO
3. declare @a numeric(5,2) set @a=(select avg(成绩) from score) select * from score where
成绩>=@a 4. declare @a numeric(5,2),@b numeric(5,2) set @a=(select max(成绩) from
score) set @b=(select min(成绩) from score) print @a-@b 7 5. declare @a char(6) set @a='刘亮' if(exists(select * from students where 姓名=@a)) print '姓名为'+@a+'的同学存在!'
else print '姓名为'+@a+'的同学不存在!' 6. declare @a char(8) set @a='计算机' select 计算机专业人数=count(*) from students where left(专业,3)=@a 7. select year(入学日期) as 入学年份,count(*) as 人数 from students group by year(入学日期) 8. select month(入学日期)
as 入学月份,count(*) as 人数 from students group by month(入学日期) 9. select day(入学日期) as 入学日号,count(*) as 人数 from students group by day(入学日期) 10. create
procedure xxk1 as begin select * from students x,score y where x.学号=y.学号 end
procedure xxk2 as begin select x.学号,x.姓名,x.专业,count(*) as 门数 from students
x,score y where x.学号=y.学号 group by x.学号,x.姓名,x.专业 end procedure
xxk3 8 as begin select 学号,avg(成绩) as 平均成绩 from score group by 学号 end
procedure xxk4 ( @a char(8),@b varchar(10),@c numeric(5,2) ) as begin update
score set 成绩=@c where 学号=@a and 课程名=@b end procedure xxk5 ( @a
char(8),@b varchar(10),@c numeric(5,2) ) as begin insert into score values(@a,@b,@c) end
procedure xxk6 ( @a char(8),@b varchar(10) ) as begin delete from score where
学号=@a and 课程名=@b end @a char(8),@b varchar(10),@c numeric(5,2)
declare @d int set @d=0 declare xxx cursor for select 学号,课程名,成绩 from score 9 open
xxx fetch xxx into @a,@b,@c while @@fetch_status=0 begin set @d=@d+1 fetch from xxx
into @a,@b,@c end close xxx deallocate xxx print @d e @a char(8),@b
varchar(10),@c numeric(5,2) declare xxx cursor for select 学号,课程名,成绩 from score
open xxx fetch xxx into @a,@b,@c while @@fetch_status=0 begin print @a+replicate(' ',3)
+@b+str(@c)+replicate(' ',3) +(case when when when else end ) fetch from end close xxx
deallocate xxx @c>=90 then '优秀' @c>=70 then '良好' @c>=60 then '及格' '不及格' xxx
into @a,@b,@c e @c numeric(5,2) declare @c1 int, @c2 int, @c3 int, @c4 int set
@c1=0; set @c2=0; set @c3=0; set @c4=0 declare xxx cursor for select 成绩 from score
open xxx fetch xxx into @c while @@fetch_status=0 begin if(@c>=90) set @c1=@c1+1;
else if(@c>=70) set @c2=@c2+1; 10 else if(@c>=60) set @c3=@c3+1; else set
@c4=@c4+1 fetch from xxx into @c end close xxx deallocate xxx print print print print '优秀生人数:'+str(@c1,5); '良好生人数:'+str(@c2,5); '及格生人数:'+str(@c3,5); '及格生人数:'+str(@c4,5) e @a char(8),@b varchar(10) declare @c numeric(5,2) declare @d
int set @d=80 declare xxx cursor for select 学号,课程名,成绩 from score open xxx fetch
xxx into @a,@b,@c while @@fetch_status=0 begin if(@c>=@d) print @a+replicate('
',3)+@b+str(@c,5) fetch from xxx into @a,@b,@c end close xxx deallocate xxx e
@a char(8),@b varchar(10),@c numeric(5,2) declare @s char(8),@r varchar(10) set @s='20030001' set @r='数学' set @c=84 declare xxx cursor for select 学号,课程名 from
score open xxx fetch xxx into @a,@b while @@fetch_status=0 begin if(@a=@s and
@b=@r) update score set 成绩=@c where current of xxx fetch from xxx into @a,@b 11 end
close xxx deallocate xxx e @a char(8),@b varchar(10) declare @s char(8),@r
varchar(10) set @s='20030001' set @r='数学' declare xxx cursor for select 学号,课程名
from score open xxx fetch xxx into @a,@b while @@fetch_status=0 begin if(@a=@s and
@b=@r) begin delete from score where current of xxx break end fetch from xxx into @a,@b
end close xxx deallocate xxx 数据库, Transact四、根据下面所给的 AAA 数据库,按照下列每种功能写出相应的 Transact-SQL 语句或 程序段 假设使用名称为 AAA 的数据库,它包括 Students(学号 char(8),姓名 varchar(8), 年龄 int,专业 varchar(20),入学日期 DateTime)和 Score(学号 char(8),课程名 varchar(10),成绩 numeric(5,2))两张表。 1. 以“xxxx 年 xx 月 xx 日”的格式显示某日期时间型数据,假设字段名为
Mydate,存 于 Mytable 表中。 2. 将字符串’I am a student’以大写字母显示。 3. 从名字为“My Table”的表中查询出所有记录。 4. 将字符串’SOFTWARE’中的’SOFT’提取出来,并以小写形式显示出来。 5. 显示出该 Score 表中的全部数据,并要求当成绩为空时显示数值-1。 6. 显示出当前日期中的年份和月份数据。 7. 显示出 Students 表中所有学生记录的学号列的前四个字符。 8. 显示出一个整数 25 和当前日期 getdate()的值分别占用的字节数。 Transact语句或程序段。 五、按照下列每种功能写出相应的
Transact-SQL 语句或程序段。 假设使用名称为 AAA 的数据库,它包括 Students(学号 char(8),姓名 varchar(8), 年龄 int,专业 varchar(20),入学日期 DateTime)和 Score(学号 char(8),课程名 varchar(10),成绩 numeric(5,2))两张表。 12 1. 创建 AAA 数据库,所有参数取默认值。 2. 创建 Students 表。 3. 将 AAA 数据库的初始大小更改为 5MB,最大空间限定为 10MB。 4. 假设 Students 表中已存在大量学生记录,求所有“计算机软件”专业学生的平均年 龄,如果平均年龄大于 19 则显示“平均年龄超过
19” ,否则显示“平均年龄没有超过 19” 。 参考解答 一、单选题 1. A 2. B 9. A 10. B 17.
B 18. D 25. B 26. C 3. A 11. A 19. C 27. A 4. D 12. A 20. A 28. D 5. A 13. A 21. B 29. A 6. B
14. D 22. A 30. B 7. C 15. A 23. B 31. D 8. C 16. B 24. A 32. D 二、填空题 1. 客户机/服务器(或 C/S) 2. 客户机(或客户端) 3. 网络流量 4. 硬盘空间 5. 数据封锁机制 6. 注册账号(或登录账号) 7. Transact-SQL 8. 企业版、标准版、个人版 9. 系统管理员 10.
域用户账号 11. 本地计算机名 12. 暂停、停止 13. 暂停 14. 操作系统文件 15. 表、索引、视图、触发器、存储过程 16. mdf、ndf、ldf 17. 系统数据库、用户数据库 18. master、model、tempdb、msdb 19. msdb 20. 批处理 21. GO 22. 局部变量 23. 空格 24. 日期、时间 25. bit 26. ’ab’ 27. 常规标识符、分隔标识符 28. bigint int smallint tinyint 29. 8、4、2、1 30. 数值、字符、日期时间 31. 企业管理器 查询分析器 32. 查询分析器 33.
sp_renamedb 34. 企业管理器 35. Backup Database、Restore Database 36. Null(空) 37. 删除、修改 38. 单引号 39. 备份 40. SELECT 41. 索引 42. 查询 43. Group By 44. 自动
45. 插入、删除、修改 46. 聚集、非聚集 47. 快 48. 可执行 49. 局部变量、全局(系统)变量 50. 批处理 51. SELECT、SET 52. 存储过程 53. 数据、日志 54. ON、LOG ON
55. ALTER DATABASE、 DROP DATABASE 56. 2、USE 57. 打开、重建 58. 插入、修改、删除 59. 多、多 60. CREATE INDEX、DROP INDEX 13 61. 63. 65. 67. 69. 71. 73. 75.
77. 79. 81. 83. 84. 86. 88. 90. 92. 94. 96. 98. 聚集、非聚集 62. 升序、降序 非空、唯一、聚集 64. 建立(创建)、 索引 备用(侯选码)、不允许 66. 主码、唯一值 --、/*、*/ 68. @、@@ SELECT、SET SELECT、SET 70. DECLARE、逗号 BEGIN、END 72. 空格、分号、换行 函数、表达式 74. 2、多、一 单条、END 76. BREAK、CONTINUE DECLARE CURSOR、查询(或 SELECT) 78. OPEN、CLOSE @@FETCH_STATUS 80.
CURRENT、<游标名> 删除、单(一) 82. 并发控制、捆绑 BEGIN TRAN、COMMIT
[TRAN]、ROLLBACK [TRAN] 多、RETURN(返回) 85. CREATE PROC、EXEC 参数、
过程体 87. 插入(insert)、 删除(delete)、 更新(update, 或修改) CREATE TRIGGER、DROP TIRGGER 89. PRIMARY KEY、多 检查、唯一值 91. CONSTRAINT、<约束名>
更新、检查 93. 操作系统、登录 琐、钥匙 95. 登录帐号、口令(密码) GRANT、REVOKE 97. ON、TO ON、FROM 99. FETCH、DEALLOCATE 三、写出下列每条语句或程序段的功能 1. 从 Students 表中查询出所有当年(系统时间)入学的学生记录。 2.
首先定义一个名为@MyNo 的局部变量, 并给它赋初值, 如果@MyNo 属于计算机软件专 业,则显示出平均成绩,否则显示“学号为@MyNo 的学生不存在或不属于软件专业” 。 3. 从 score 表中查询出大于等于平均成绩的所有记录。 4. 求出 score 表中最高成绩与最低成绩的分数之差。 5. 从 students 表中查询姓名为@a 的值的同学是否存在,根据不同情况显示出相应信 息。 6. 从 students 表中统计出专业名开头为@a 的值(即“计算机” )的所有学生人数。 7. 从 students 表中分组统计出每个年份入学的学生人数。 8. 从 students 表中分组统计出每个月份入学的学生人数。 9. 从 students
表中分组统计出每个日号入学的学生人数。 10. 显示出 AAA 库中所有学生的记录信息及选课成绩 11. 显示出 AAA 库中每个学生的学号、姓名、专业等信息及选课门数
12. 显示出 AAA 库中每个学生的平均成绩 13. 修改 score 表中学号为@a 的值、课程名为@b 的值的学生的成绩为@c 的值。 14. 向 score 表中插入学号为@a 的值、课程名为@b 的值、成绩为@c 的值的学生成绩记 录。 15. 从 score 表中删除学号为@a 的值、课程名为@b 的值的学生成绩记录。 16. 从 score 表中统计并显示出记录总数 17. 显示出 score 表中每个成绩记录,并在每条记录最后给出优秀、良好、及格、不及 格等相应等级。 18. 从 score 表中按成绩统计并显示出优秀、良好、及格、不及格各多少人。 14 19. 显示出 score 表中成绩大于等于@d 值的所有记录。 20. 修改
score 表中学号为@a 的值、课程名为@b 的值的学生的成绩为@c 的值。 21. 从 score
表中删除学号为@a 的值、课程名为@b 的值的学生记录。 数据库, Transact四、根据下面所给的 AAA 数据库,按照下列每种功能写出相应的 Transact-SQL 语句或 程序段 1. SELECT DATEPART(year,Mydate) + ’年’ + DATEPART(month,Mydate) + ’月’ +
DATEPART(day,MyDate) + ’日’ FROM Mytable 2. SELECT UPPER(‘I am a student’) 3.
SELECT * FROM [My Table] 4. SELECT LOWER(LEFT(’SOFTWARE’,4)) 5. select 学号,课程名,isnull(成绩,-1) from Score 6. select year(getdate()),month(getdate()) 7. select left(学号,4) fron Students 8. select datalength(25),datalength(getdate()) Transact语句或程序段。
五、按照下列每种功能写出相应的 Transact-SQL 语句或程序段。 1. Create DataBase
AAA 2. create table students ( 学号 char(8) primay key, 姓名 varchar(8), 年龄 int, 专业
varchar(20), 入学日期 datetime ) 3. ALTER DATABASE AAA MODIFY FILE ( NAME =
AAA_data, SIZE = 5, MAXSIZE=10 ) 4. IF (Select Avg(年龄) From Students Where 专业=’计算机软件’)>19 SELECT ‘平均年龄超过 19’ ELSE SELECT ‘平均年龄没有超过 19’
15
二、SQL Server 2000 模拟试题 (一 ) 一、填空题(每空 1 分) 1、 数据管理经历了_______阶段、 ________阶段到________阶段的变迁。 (手工管理、文件管理、数据库管理) 2、实体之间联系的基本类型有_______、________、_______。(一对 一、一对多、多对多) 3、在 E-R 图中,用____表示实体,用______表示联系,用______表示 属性。(矩形框、菱 形框、椭圆框) 4、数据库的三层模式结构是________、_________、________。(外模 式、模式、内模式) 5、关系模型中一般讲数据完整性分为三类:_________、___________、 __________。 (实体完整性、参照完整性、用户定义完整性) 6、SQL Server 是一种支持___________体系结构的关系数据库管理系 统。(客户/服务器) 7、用来存储数据库数据的操作系统文件主要有两类:___________、
____________。 (数据文件、日志文件) 8、SQL Server 基本的数据存储的最小单位是______,其大小为 _____KB。(页、8) 9、Extent 是 SQL Server 在分配空间给_______、________的单位,每 个 Extent 为_____个 连续的数据页,相当于______KB
大小。 (数据表、 索引、8、64) 10、SQL Server 2000 的新特色之一就是 Multiple
Instances,一台物理计 算机上可以同时 执行____个实例的执行。(16) 11、
____________是一个逻辑上统一、地域上分布的数据集合。(分 布式数据库) 12、数据库的三级模式是指内模式、_______________、外模式。(模 式) 13、 _____是现实世界在人们头脑中的反映,是对客观事物其联系的 一种抽象描述(概念世界) 14、
数据模型由三部分组成:模型结构、数据操作、____________。 (完整性规则) 15、
一种数据模型的特点是:有且仅有一个根结点,根结点没有父结 点;其它结点有且 仅有一个不是父结点。则这种数据模型是 _________________。(层次模型)16、能唯一标识一个元组的属性或 属性组成为________________。(关键字) 17、SQL 语言一种标准的数据库语言, 包括查询、定义、操纵、_______ 四部分功能。(控制) 18、视图是从其它________________________或视图导出的表。(基本 表) 19、在关系模式 R
中,若属性或属性组 X 不是关系 R 的关键字,但 X 是其他关系模式的关键字,则称 X 为关系 R 的___________。 (外 关键字) 20、数据字典中的____________是不可再分的数据单位。(数据项) 21、在系统故障恢复中,将故障发生前已提交事务的标识记入________ 队列。(重做(或 REDO)) 22、客户机/服务器系统由服务器平台、客户平台和__________组成。 (连接支持) 23、PowerBuilder 中_________是最具特色的对象之一,利用此对象不 但能直接实现查询操作, 而且可以进行增、 删、 改操作。 (数据窗口 (或 DataWindow 或 DataWindows)) 二、单项选择题(在每小题的四个备选中,选出一个正确,并 将正确的序号填在题干的括号内。每小题 2 分) 1、一个仓库可以存放多种产品,一种产品只能存放于一个仓库中。仓 库与产品之间的联系类型是 A、一对一的联系 B、多对一的联系 C、一对多的联系 D、多对多的联系 :(C ) 2、概念数据模型依赖于那个数据库管理系统(D) A、DB2 B、MS SQL Server C、Oracle D、不依赖于任何数据库管理系统 3、以下论述中正确的是(A) A、多对多的联系总是可以转换成两个一对多的联系 B、ACCESS 是数据库管理系统 C、数据的三种范畴包括现实世界阶段、虚拟世界阶段、信息世界阶段 D、我们通常所说的数据仓库就是指数据仓库 4、以下那中情况不是连接陷阱产生原因(A) A、把多对多的联系转换为一对一的联系 B、把多对多的联系转换为一对多的联系 C、把原本的联系现在用实体表示 D、把原本的联系通过实体联系到一起 5、不属于传统数据模型的是(D) A、层次数据模型 B、网状数据模型 C、关系数据模型 D、面向对象数据模型 6、正确的论述是(A) A、自然连接和等值连接很相像,但实际上他们是不同的。自然连接要 去掉重复的属性,等值连接不需要去掉重复的属性。 B、一个关系是参照关系,那么就不会是被参照关系。 C、概念数据库与外部数据库都是物理存在的。 D、一个关系可以有一个或多个主关键字。 7、在 SQL Server
中,不是对象的是(B) A、用户 B、数据 C、表 D、数据类型 8、以下论述不正 确的是(D) A、distribution 数据库是系统数据库 B、企业管理器与查询分析器都是客户端工具 C、 SQL Server 2000 可以安装到 windows2000、 windows XP、 windows NT
系统上。 D、SQL Server 支持的 SQL 命令集称为 T_SQL,它是完全符合 ANSII
SQL92 标准的。 9、以下正确的论述是(C) A、在建立数据库的时候,SQL Server 是可以创建操作系统文件其目 录路径。 B、数据库中有一些 sys 开头的系统表,用来纪录 SQL Server 组件、对 象所需要的数据, 这些系统表全部存放在系统数据库中。
C、SYS 开头的系统表中的数据用户不能直接修改,但可以通过系统存 储过程、系统函数 进行改动、添加。 D、12AM 是中午,12PM 是午夜。 10、声明了变量:declare
@i int,@c char(4),现在为@i 赋值 10,为 @c 赋值'abcd', 正确的语句是(C) A、set @i=10,@c='abcd' B、set i=10 , set @c='abcd' C、select @i=10,@c='abcd' D、select @i=10,
select @c='abcd' 11、有如下代码,当代码中_[关键字]_分别为 break continue return 时,
最后的 print @n 输 出的值为(A) declare @n int set @n=3 while @n>0 begin set
@n=@n-1 if @n=1 _[关键字]_ end print @n A、1,0,不输出 B、1,1,1 C、0,0,0 D、0,1,2 12、不正确的论述是(C) A、 SQL Server 有 Windows 集成认证方式,但如果没有把 windows 用 户添加为 SQL Server 的 登陆账户,那么该 Windows 用户不能访问 Sql Server 服务器。 B、SQL Server 2000 的客户端没有操作系统的限制。
C、Windows2000 是个具有并行处理能力(支持多 CPU)的操作系统, 安装在之上的
SQL Server 2000 需要在实例的属性中设定使用当前的 CPU,否则只能使用默认的
CPU。 D、在 Windows 2000/NT 中,SQL Server 是以服务的方式被执行的。 13、关于 SQL Server 2000 安装命名实例时,不正确的描述是(B) A、最多只能用 16 个字符 B、实例的名称是区分大小写 C、第一个字符只能使用文字、@、_和#符号。 D、实例的名称不能使用 Default 或 MSSQLServer 这两个名字。 14、不是 SQL Server 服务器组件的是(D) A、升级工具(update Tools) B、复制支持(Replication Support)
C、全文搜索(Full-Text Search) D、Profiler 15、是长期存储在计算机内的有组织,可共享的数据集合. (C) A、数据库管理系统 B、数据库系统 C、数据库 D、文件组 织
16.数据库系统不仅包括数据库本身,还要包括相应的硬件,软件和(D). A、数据库管理系统 B、数据库应用系统 C、相关的计算机系统 D、各类相关人员 17.在文件系统阶段,数据(B) A、无独立性 B、独立性差 C、具有物理独立性 D、具有逻辑独立性 18.数据库系统阶段,数据(D) A、具有物理独立性,没有逻辑独立性 B、具有物理独立性和逻辑独立性 C、独立性差 D、具有高度的物理独立性和一定程度的逻辑 独立性
19. 属于信息世界的模型, 是现实世界到机器世界的一个中间层次. (B) A、数据模型 B、概念模型 C、E-R 图 C、关系模型 20.数据库系统软件包括 DBMS 和(D)
A、数据库 B、高级语言 C、OS D、数据库应用系统和开发工具 21.在 SQL 语言中授权的操作是通过(C)语句实现的。 A、CREATE B、REVOKE C、GRANT D、INSERT
22.数据库中只存放视图的(C) A、操作 B、对应的数据 C、定义 D、限制 23.概念结构设计阶段得到的结果是(B) A、数据字典描述的数据需求 B、E-R 图表示的概念模型 C、某个 DBMS 所支持的数据模型 D、包括存储结构和存取方法的物 理结构 24.一个 m:n 联系转换为一个关系模式。关系的码为(B) A、某个实体的码 B、各实体码的组合 C、n 端实体的码 D、任意一个实体的码 24、现有关系:学生(学号,姓名,课程号,系号,系名,成绩),为消 除数据冗余,至少需要分解为(C ) A 1 个表 B 2 个表 C 3 个表 D 4 个表 25、已知职工和职工亲属两个关系,当职工调出时,应该从职工关系中 删除该职工的元组,同时在职工亲属关系中删除对应的亲属元组,在 SQL 语言中,定义这个完整性约束的短语是(D ) A ON DELETE ALL B ON
DELETE RESTRICT C ON DELETE SET NULL D ON DELETE CASCADE 26、DBMS
中的检查点机制用于(B ) A 检查事务的故障 B 减少故障恢复的时间 C 检查数据库一致 性状态 D 检查数据库的完整性 27.有两个关系 R 和 S,分别包含 15 个和
10 个元组,则在 R∪S,R-S, R∩S 中不可能出现的元组 数目情况是(B ) A 15,5,10 B 18,7,7 C 21,11,4 D 25,15,0 28.授予用户 Jean 可以查询帐户表的权限,使用的 SQL 语句是( A ) A GRANT SELECT ON 帐户 TO Jean B GRANT SELECT
TO Jean ON 帐户 C GRANT SELECT TO 帐户 ON Jean D GRANT SELECT ON Jean
TO 帐户 29.已知实体 A 中有 15 个实例(一个实例相当于一行),实体 B 中有 50 个实例。若实体 A 中的一个 实例,最多与实体 B 中的 10 个实例相关,最少与实体 B
中 2 个实例相 关,则实体 A 的基数是(B) A (1,15) B (2,10) C (2,50)
C (15,50) 30.如下不能正确执行的语句是(D) A、select * from table_name where
1>2 B、truncate table table_name C、delete from table_name where null=null D、alter table
table_name add column idd int 三、简答题(每小题 6 分) 1、数据库的基本特征。 答:1)相互关联的数据的集合 2)用综合的方法组织数据,保证尽可能的提高访问效率; 3)具有较小的数据冗余,可以供多个用户共享; 4)具有较高的数据独立性; 5)具有安全控制机制,能保证数据的安全、可靠; 6)允许并发的使用,能有效的、时地处理数据,并能保证数据的一 致性和完整性。 2、数据库管理系统的功能。 答:1)数据库定义功能; 4)数据库的控制功能; 2)数据库的操纵功能; 5)数据库的通信功能。
3)数据库的查询功能; 3、数据库的通信功能。数据库的通信功能。三层客户/服务器模型的优 点。 答:1)可重复使用; 2)性能改善; 3)易于管理; 4)易于维护。 4、试比较文件系统和数据库系统的特点? 答:文件系统和数据库系统所处理的数据都可长期保存,反复操作。文 件系统中文件内部具有结构,但数据文件之间的联系无法定义;数据库 系统既可结构化局部数据,也可定义全局的数据结构。文件系统的应用 程序与数据之间有了一定的独立性;而 数据库系统通过两方面的映象 功能,使数据具有物理独立性和逻辑独立性。文件系统的数据共享性较 差冗余度高,数据是面向程序的;数据库系统的数据是面向全局的,共 享性好,冗余 度低。数据库系统的数据由 DBMS
统一管理和控制,有较 好地控制数据安全性、完整型、并发 管理、数据库恢复等。 5、DBA 的主要职责是什么? 答:数据库管理员(DBA)负责全面和控制数据库系统,其主要 职责有: 设计与定义数据库系统;帮助最终用户使用数据库系统; 监督与控制数据库系统的使用和运行;转储与恢复数据库; 改进和重组数据库系统,调优数据库系统的性能;重构数据库。 6、简述关系的性质? 答:① 同一列中的分量是同一类型的数据。 不同列可以取相同的 数据类型。 ② 关系中的列又称为属性,并赋予属性名。不同列的属性名不 同。 ③ 列的次序可以任意交换。 ④ 任意两个元组不能完全相同。 ⑤ 行的次序可以任意交换。⑥ 列具有原子性, 即每一列值是不 可分的数据项 7、数据依赖对关系模式的影响? 答:数据依赖是通过一个关系中属性间值的相等与否体现出来的数 据间的相互关系。它是现实 世界属性间相互联系的抽象,是数据内在 的性质,是语义的体现。函数依赖是数据依赖的一种 类型。部分函数 依赖、传递函数依赖会导致关系模式中的更新异常、插入异常、删除异 常、数据冗余等问题。 8、试述数据库设计的基本步骤。 答: (1)需求分析阶段:需求收集和分析,得到数据字典和数据流图。 (2)概念结构设计阶段:对用户需求综合、归纳与抽象,形成概念模 型,用 E-R 图表示。 (3)逻辑结构设计阶段:将概念结构转换为某个 DBMS 所支持的数据 模型。 (4)数据库物理设计阶段:为逻辑数据模型选取一个最适合应用环境 的物理结构。 (5)数据库实施阶段:建立数据库,编制与调试应用程序,组织数据 入库,程序试运行。 (6)数据库运行和维护阶段:对数据库系统进行评价、调整与修改。 四、判断题(对的打√,错的打×):每题 1 分 1、安装 Microsoft SQL Server
2000 企业版对操作系统的最低要求可以 是 Microsoft Windows 2000 Professional。(×)
2、每一个服务器必须属于一个服务器组。一个服务器组可以包含 0 个. 一个或多个服务器(√) 3、认证模式是在安装 SQL Server 过程中选择的。系统安装之后,可以 重新修改 SQL Server 系统的认证模式。(×) 4、在创建表时,不能指定将表放在某个文件上,只能指定将表放在某 个文件组上。如果希望将某个表放在特定的文件上,那么必须通过创建 文件组来实现。(√ ) 5、当用户定义的数据类型正在被某个表的定义引用时,这些数据类型 不能被删除。(√ ) 6、在使用子查询时,必须使用括号把子查询括起来,以便区分外查询 和子查询。(√ ) 7、索引越多越好。(×) 8、视图本身没有数据,因为视图是一个虚拟的表。(√) 9、 创建触发器的时候可以不是表的所有者或数据库的所有者。(×) 10、 输入正确的所有者口令, 才可以修改 DTS 包的定义和执行 DTS 包。 如果只输入用户口令,那么只能执行 DTS 包,不能修改该 DTS
包的定 义。(√ ) 五、分析以下问题的实体之间的关系,并画出 E-R 图(每题 5 分)
1、一名研究生可以选修多门课程,一名导师可以讲授多门课,一名导 师可以带多名学生,一名学生只能有一名导师。 参考:研究生与课程 :1:N 导师与课程 : 1:N 导师与学生 : 1:N 2、一名顾客可以发出多次订购单进行订货,一张订单上面可以定购多 个商品,一张订购单只能属于一名顾客,一种商品可以被不同的定购单 定购。
参考:顾客 与 订购单 : 1:N 订购单 与 商品 : M:N 六、已知有学生关系
S(SNO,SNAME,AGE,DNO),各属性含义依 次为学号,姓名、年龄和所在 系号;学生选课关系 SC(SNO,CNO, SCORE),各属性含义依次为学号、课程号和成绩。
分析以下 SQL 语句: SELECT SNO FROM SC WHERE SCORE= (SELECT MAX(SCORE) FROM SC WHERE CNO=’002’) 请问上述语句完成了什么查询操作? 答:找出选修’002’课程 成绩最好 的学生的学号 。 七、操作题(每题 4 分) 有一个“学生-课程”数据库,数据库中包括三个表: (1) “学生”表 Student 由学号(Sno)、姓名(Sname)、性别(Ssex)、 年龄(Sage)、 所在系(Sdept)五个属性组成,可记为:
Student(Sno,Sname,Ssex,Sage,Sdept) Sno 为关键字。 (2) “课程”表 Course 由课程号
(Cno)课程名 、 (Cname)先修课号 、 (Cpno) 、 学分 (Ccredit) 四个属性组成, 可记为: Course(Cno,Cname,Cpno,Ccredit) Cno 为关键字。 (3) “学生选课”表 SC
由学号(Sno)、课程号(Cno)、成绩(Grade) 三个属性组成, 可记为: SC(Sno,Cno,Grade)
(SNO, CNO) 为关键字。 完成下列操作: 1、建立一个“学生”表 Student,它由学号 Sno、姓名 Sname、性别 Ssex、 年龄 Sage、 所在系 Sdept 五个属性组成,其中学号属性不能为空,并 且其值是唯一的。 2、查询全体学生的详细记录 3、查询年龄在 20 至 23
岁之间的学生的姓名、系别、和年龄 4、计算 1 号课程的学生平均成绩 5、将计算机科学系全体学生的成绩置零 参考: 1、CREATETABLE Student (Sno CHAR(5) NOT
NULL UNIQUE,Sname CHAR(20), Ssex CHAR(1), Sage INT, Sdept CHAR(15)); 2、SELECT * FROM Student; 3、SELECT Sname, Sdept, Sage FROM Student WHERE Sage
BETWEEN 20 AND 23; 4、SELECT AVG(Grade) FROM SC WHERE Cno='1'; 5、UPDATE
SC SET Grade=0 WHERE ‘CS’= ( SELECT Sdept FROM Student WHERE
=); 模拟试题( SQL Server 模拟试题(六) 班级: _______ 姓名:
_______ 学号: _______ 成绩: _______ 一、 填空题( 20*2 分 ) 1.E-R 数据模型一般在数据库设计的 _______ 阶段使用。概念设计阶段 1. 2. 根据模型应用目的的不同,数据模型可以分为两类:一类是 _________,是按用户的观点来对数 据和信息进行抽象;另一类是_________,是按计算机的观点建模。概念模型、结构数据模型 3.
构数据模型直接描述数据库中数据的逻辑结构,常用的结构数据模型有 _________,_________, _________,_________。层次模型、网状模型、关系模型、面向对象模型
4. 命令 truncate table 的功能是_______________。清空数据库 5. 数据完整性 是指存储在数据库中的数据正确无误并且相关数据具有一致性, 根据完整性机制所作 用的数据库对象和范围不同,可以分为: _________,_________,_________,_________四种, 其中主键可以实现_________完整性。实体完整性、值域完整性、引用完整性、值域完整性、实体 完整性 6. 模糊查询符号 % 代表 _______ ,查询条件 e%im 代表意思是 _______ 。任意字符 查询以 e 开 头中间任意字符(串) im 结尾的字符串 7. 使用索引可以减少检索时间,根据索引的存储结构不同将其分为两类: _________和_________。 簇集索引、非簇集索引 8. SQL server 中的变量分为两种,全局变量和局部变量。其中全局变量的名称以_________字符开 始,有系统定义和维护。局部变量以_________字符开始,由用户自己定义和赋值。@@ 、 @ 9. 实现数据完整性的途径有
_______ 、 _______ 、 _______ 、 _______ 等。约束 默认 规则 存 储过程等 选择题 (10*2 分)? 二、 1、 下面仅存在于服务器端的组件是: )A ( A、服务管理器 B、企业管理器组件 C、查询分析器组件 D、导入导出组件 2、下面描述错误的是( ) 。B A 每个数据文件中有且只有一个主数据文件。 B 日志文件可以存在于任意文件组中。 C 主数据文件默认为 primary 文件组。 D 文件组是为了更好的实现数据库文件组织。 3、下面标志符不合法的是: ) ( 。C A、[my delete] B、_mybase C、$money
D、trigger 4、下面字符串能与通配符表达式[ABC] _ a 进行匹配的是: ) ( 。C A、BCDEF B、A_BCD C、ABa D、A%a 5、下面是合法的 smallint 数据类型数据的是: 。C () A、223.5 B、32768 C、-32767 D、58345 6 、关系数据模型 _______ 。D A 只能表示实体间的 1 : 1 联系 B 只能表示实体间的 1 : n 联系 C 只能表示实体间的 m : n 联系 D 只能表示实体间的上述 3 种联系 7 数据库概念模式产生于数据库系统设计的 _______ 阶段。C A 、规划 B 、需求分析 C 、概念设计 D 、逻辑设计
8 、 客观存在的各种报表、图表和查询格式等原始数据属于 _______ 。B A 、机器世界 B 、信息世界 C 、现实世界 D 、模型世界 9、SQL server 数据库文件有三类,其中主数据文件的后缀为:C A、.ndf B、.ldf C、.mdf D、.idf 10 、下列语句中正确的是 _______ 。表 score(sti_id,names,math,English,VB) B A select stu_id,sum(math) from
score B select sum(math),avg(VB) from score C select * ,sum(english) from score D delete *
from score 三、简答题。 (10 分) 1、简述视图的意义和优点? 2、 试述如何有效的保护数据库的安全? 四、综合应用题。 30 分) ( 学生选课系统,主要表有:学生基本信息表(学号、姓名、性别、专业、出生年月等) ,选课表(学号、课 程号、分数) ,课程表(课程号、课程名、所属专业、学分) 要求: 1、用 E-R 图表示上述关系的概念模型。 分) (5 3、写出 SQL 语句。 1) 查询所有选 SQL 课程的学生学号,姓名和专业。(5 分) 2) 删除所有选择数学的同学的选课记录。(5 分) 3) 查询有哪些课程没有被任何同学报选。(5 分) 4、创建存储过程。(10 分) 1)、能够查询出选修任何课程的学生信息相应的分数。 2)、以表格的形式返回本课程的平均分数。 模拟试题( SQL Server 模拟试题(四) 班级: _______ 姓名: _______ 学号: _______ 成绩:
_______ 一、填空题( 30*1 分) 1. 根据模型应用目的的不同,数据模型可以分为两类:一类是 _________ ,是按用户的观点来对 数据和信息进行抽象;另一类是
_________ ,是按计算机的观点建模。概念模型,结构数据模型 2. 结构数据 模型直接 描述数 据 库中数据 的逻辑结 构,常 用 的结构数 据模型有 _________ ,
_________ , _________ , _________ ,其中 SQL 数据库是基于 _________ 建立的。 层次模型、网状模型、关系模型、面向对象模型,关系模型 3.从操作系统的角度来看, SQL 具有 _________ 的特点,减少了多用户访问的时间。____________ 是一
种无须扫描整张表就能实现对数据的快速访问的途径。SQL server 使用 ____________
记载用户对数据库 进行的所有操作。在给数据库改名之前,必须设置数据库处于
____________ 状态。sp_help 系统存储过 程的功能是 ___________________ 。 单进程多线程 索引 日志文件 单用户 显示数据对象的相关属性 4 数据完整性实质,存储在数据库中的数据正确无误并且相关数据具有一致性,根据完整性机制所作用的 数据库对象和范围不同,可以分为: _________ , _________ , _________ , _________
四种,其中 标志列可以实现 _________ 数据完整性。 实体完整性、值域完整性、引用完整性、值域完整性,实体完整性 语言中行注释的符号为 _________ ;块注释的符号为 _________ 。____________ 是将用户组成一 个集体授权的单一单元。
--、/* */ 角色 6.为了实现安全性,每个网络用户在访问 SQL server 数据库之前,都必须经过两个阶段的检验: _________ 和 _________ 。身份验证、权限验证
7._________ 是 SQL 程序中最小的工作单元,要么成功完成所有操作;要么就是失败,并将所作的一切还 原。事务 server 中的变量分为两种,全局变量和局部变量。其中全局变量的名称以 _________ 字符开始, 有系统定义和维护。局部变量以
_________ 字符开始,由用户自己定义和赋值。还原是指将数据库备份加 载到服务器中的过程,在 SQL server 中有三种数据库的还原模型,分别是 _________ ,
_________ , _________ 。@@ , @ 简单还原 , 完全还原,批日志还原 是指 __________________ 。数据转换服务 二、选择题 (10*2 分 ) 1. 下面存在于服务器端的组件是: 。A () A 、服务器组件 B 、企业管理器组件 C 、查询分析器组件 D 、导入导出组件 2 、下面描述错误的是( ) 。B A、 每个数据文件中有且只有一个主数据文件。 B、 日志文件可以存在于任意文件组中。 C、 主数据文件默认为 primary 文件组。 D、 文件组是为了更好的实现数据库文件组织。 3 、 SQL server
数据库文件有三类,其中主数据文件的后缀为:C A 、 .ndf B 、 .ldf C 、 .mdf D 、 .idf
4 、下面标志符不合法的是: ) ( 。C A 、 [my delete] B 、 _mybase C 、 $money
D 、 trigger1 5 、下面对索引的相关描述正确的是: ) ( 。C A、 经常被查询的列不适合建索引。 B、 列值唯一的列适合建索引。 C、 有很多重复值的列适合建索引。
D、 是外键或主键的列不适合建索引。 6 、下列说法中正确的是:D A 、 SQL 中局部变量可以不声明就使用 B 、 SQL 中全局变量必须先声明再使用 C 、 SQL 中所有变量都必须先声明后使用 D 、 SQL 中只有局部变量先声明后使用;全局变量是由系统提供的用户不能自己建立。 7 、下面字符串能与通配符表达式 [ABC]%a 进行匹配的是: 。C () A 、 BCDEF B 、 A_BCD C 、 ABC_a D 、 A%a 8 、下面是合法的 smallint 数据类型数据的是: ) ( 。C A 、 223 . 5 B 、 32768 C 、 -32767
D 、 58345 9 、下面对 union 的描述正确的是() 。D 任何查询语句都可以用 union
来连接 union 只连接结果集完全一样的查询语句 union 是筛选关键词,对结果集再进行操作。 union 可以连接结果集中数据类型个数相同的多个结果集。 10 、 print round
( 998.88 , 0 ),round(999.99,-1)结果是:C A 、 999.00 , 990.00 B 、 999.00 , 1000.00
C 、 998.00 , 1000.00 D 、 999.00 , 999.99 三、简答题。 (10 分 ) 简述常用的连接数据库的三种方法?答: ODBC OLE DB ADO 四、综合应用题。 学生选课系统,主要表有:学生基本信息表(学号、姓名、性别、专业、出生年月等) ,选课表(学号、课 程号、分数) ,课程表(课程号、课程名、所属专业、学分)要求: 1 、用 E-R
图表示上述关系的概念模型。 7.5 分) ( 2 、用表的形式表示每张表的关系模式。 (7.5
分 ) 3 、写出 SQL 语句。 1) 查询所有选 SQL 课程的学生学号,姓名和专业。 (5 分 )
2) 删除所有选择数学的同学的选课记录。 (5 分 ) 3) 查询有哪些课程没有被任何同学报选。 (5 分 ) 4 、创建存储过程。 (10 分 ) 1) 、能够查询出选修任何课程的学生信息相应的分数。 2) 、以表格的形式返回本课程的平均分数。 综合题略 <
不固定,主要看编程思路 > 模拟试题( SQL Server 模拟试题(九) 一、 选择题:(20 分)
1、根据关系数据基于的数据模型——关系模型的特征判断下列正确的一项: (___) A、只存在一对多的实体关系,以图形方式来表示。 B、以二维表格结构来保存数据,在关系表中不允许有重复行存在。 C、能体现一对多、多对多的关系,但不能体现一对一的关系。 D、关系模型数据库是数据库发展的最初阶段。 2、在“连接”组中有两种连接认证方式,其中在(___)方式下,需要客户端应 用程序连接时提供登录时需要的用户标识和密码。 A、Windows 身份验证 B、SQL Server 身份验证 C、以超级用户身份登录时 D、其他方式登录时 3、SQL Server 2000 在安装之前,应注意的事项:(___) A、SQL Server 2000 的任何版本在安装时都不用考虑操作系统的制约。 B、SQL Server 2000 的安装对硬件的要求不作任何限制。 C、SQL Server 2000 在安装之前,必须在操作系统级启用 TCP/IP。 D、在 Windows NT Server 4.0 上安装 SQL
Server 2000 时,最低的要求是必须 安装 Service Pack 4(SP4)以上。 4、关系数据库中,主键是(1___),主键的建立有(2___)种方法,当运用 Transact-SQL 语句创建主键时,可以是(3___)。 ⑴ A、为标识表中唯一的实体 B、创建唯一的索引,允许空值 C、只允许以表中 第一字段建立 D、允许有多个主键的 ⑵ A、一 B、二 C、三 D、四 ⑶
A、create table table1(column1 char(13) not null primary,column2 int not) on primary; B、alter table table1 with notcheck add constraint [PK_table1] primary key nonclustered
( column1) on primary; C、alter table table1 column1 primary key ; 5、表在数据库中是一个非常重要的数据对象,它是用来(1___)各种数据内容 的,数据库创建后就可以创建表了,创建表可以用(2___)等方法来创建。 ⑴ A、显示 B、查询 C、存放 D、检索 ⑵ A、企业管理器 B、查询分析器 C、OSQL D、企业管理器和 CREATE TABLE
语 句 6、为数据表创建索引的目的是(1___),可以在创建表时用(2___)来创建唯 一索引,也可以用(2___)来创建唯一索引。 ⑴ A、提高查询的检索性能 B、创建唯一索引 C、创建主键 D、归类 ⑵ A、设置主键约束,设置唯一约束 B、Create table,Create
index C、设置主键约束,Create indexD、以上都可以 7、 在 Transact-SQL 语法中,用来插入数据的命令是(___),用于更新的命令 是(___)。 A、INSERT,UPDATE B、UPDATE,INSERT C、DELETE,UPDATE D、CREATE,INSERT INTO 8、在 Transact-SQL
语法中,SELECT 语句的完整语法较复杂,但至少包括的部 分(1___),使用关键字(2___)可以把重复行屏蔽,将多个查询结果返回一个 结果集合的运算符是(3___),如果在 SELECT 语句中使用集合函数时,一定在 后面使用(4___)。 ⑴ A、SELECT,INTO B、SELECT,FROMC、SELECT,GROUP D、仅 SELECT ⑵ A、DISTINCT B、UNIONC、ALL C、TOP ⑶ A、JOIN B、UNIONC、INTO C、LIKE ⑷ A、GROUP BY
B、COMPUTE BYC、HAVING D、COMPUTE 9、视图是一种常用的数据对象,它是提供(1___)和(1___)数据的另一种途径, 可以简化数据库操作,当使用多个数据表来建立视图时,表的连接不能使用 (2___)方式,并且不允许在该语句中包括(3___)等关键字。 ⑴ A、查看,存放 B、查看,检索 C、插入,更新 D、检索,插入 ⑵ A、外连接 B、内连接 C、左连接 D、右连接 ⑶ A、ORDER BY,COMPUTE B、ORDER
BY,COMPUTE,COMPUTR BY C、ORDER BY,COMPUTE BY,GROUP BY D、GROUP BY,COMPUTE BY 10、 SQL SERVER 服务器上, 在 存储过程是一组预先定义并 (1___) Transact-SQL 的 语句。可以用(2___)来声明游标。 ⑴ A、保存 B、编译 C、解释 D、编写 ⑵ A、CREATE CURSOR B、ALTER CURSOR C、SET CURSOR
D、DECLARE CURSOR 二、 填空题:(20 分) 1、 更改 Microsoft SQL Server 登录的密码的命令是_______________,举例 说明其语法格式:_____________________________________。 2、 Windows NT 授权认证模式只适用于________________________平台,对于 Windows95/98 操作系统下的 SQL Server 系统将不适用。 3 、 SQL Server 中 索 引 类 型 包 括 的 三 种 类 型 分 别 是
_________________,_________________和____________________。 4、 在 SELECT 语句的 FROM 子句中最多可以指定_______个表或视图,相互之间 要 用 ________ 分 隔 , 当 所 查 询 的 表 不 在 当 前 数 据 库 时 , 可 用
___________________________格式来指出表或视图对象。 5、 服务器网络实用工具的目的_________________________________。 6、 在当 SQL SERVER 实例中有 DBOA
数据库,要将它设置成为单用户状态,请写 出设置命令:___________________________________________。 7、 删除表命令是:___________________________________________。 8、 用 SELECT 进行模糊查询时,可以使用_________或________匹配符,但要在 条件值中使用____或____等通配符来配合查询。并且,模糊查询只能针对字段类 型是_________的查询。 9、 计算字段的累加和的函数是:_______,统计项目数的函数是:________。 10、SQL SERVER 中的编程语言就是_____________________________语言。三、 三、判断题(10 分) 1、在 CREATE INDEX 语句中,使用 CLUSTERED 来建立簇索引。( ) 2、可以在企业管理器中修改数据库的名称。( ) 3 、 恢 复 数 据 , 可 以 在 查 询 分 析 器 中
使 用 这 样 的 命 令 : BACKUP DATABASE database_name FROM backup ( ) 4、在查询分析器中修改帐户时可以用系统存储过程 Sp_modibaccess。( ) 5、每个存储过程向调用方返回一个整数返回代码。如果存储过程没有显式设置 返回代码的值,则返回代码为 0,表示成功。 6、在 Transact-SQL 语句中,对不符合所有标识符规则的标识符必须进行分隔。 7、在 SQL SERVER 中,触发器的执行是在数据的插入、更新或删除之前执行的。 8、在 Transact-SQL 语句的 WHERE 子句中,完全可以用 IN 子查询来代替 OR 逻 辑表达式。 9、通配符“_”表示某单个字符。 10、因为通过视图可以插入、修改或删除数据,因此视图也是一个实在表,SQL SERVER 将它保存在
syscommens 系统表中。 四、 简答题:(20 分) 1、 写出关系型数据库的第一、第二、第三标准形式的各自要求。 2、 触发器的类型以相对的语句命令? 3、 自定义函数的类型?各自原返回值。 4、 用户权限的种类有哪些?各自的作用? 五、 分析编码题(20 分) 1、 请使用 Transact-SQL 建立如下表:表名:雇员基本信息表;字段名 数据 类型 宽度 精度 可空性 要求 NO_ID CHAR 7 NOT NULL 设为主键
NAME CHAR 10 NOT NULLSEX CHAR 2 NOT NULL 默认值为”男”AGE INT NOT
NULL DEPT VARCHAR 50 NULLPHONE VARCHAR 20 NULLNOTES VARCHAR 50
NULL 2、 现有 1 销售表,它们结构如下:id int (标识号)codno char(7) (商品编
码)codname varchar(30) (商品名称)spec varchar(20) (商品规格)price numeric(10,2) (价格)sellnum int (销售数量)deptno char(3) (售出分 店编码) selldate datetime (销售时间) 要求: 写出查询销售时间段在 2002-2-15 日到 2002-4-29 之间,分店编码是 01 的所有记录。 3、 在 table1 数据表中增加“No_id”字段,数据类型 char(12),不可空,并 将其设定为 UNIQUE 约束,写出其命令语句。 六、 编程填空题:(10 分)填写出下列触发器中缺少的关键字,使下面语句完 整 : if update([lcostprice])update
[b_drug_data] set [scostprice] = ((select [lcostprice] from inserted ____________
[codno],[lcostprice],[scostprice]________ {b_drug_} = [])/(select
[fsco] from [b_drug_data] __________ [codno],[fsco] _________ [b_drug_] =
(select [codno] from inserted group by [codno])))where [b_drug_] ___ (select
[codno] from * 试题参考 一、 选择题:(20 分)注:每个选空 1 分 1、B,2、B,3、C,4、⑴ A,⑵C,⑶B,5、⑴C,⑵D,6、⑴A,⑵C7、A,A 8、 ⑴B,⑵A,⑶B,⑷A,9、⑴A,⑵A,⑶B,10、⑴B,⑵D 二、 填空题:(20 分)注:每空 1 分
1、 Sp_password,sp_password “12345”,”54321”,”abc” 2、 Windows NT 3、 唯一索引,簇索引,非簇索引 4、 256,逗号,”数据库.所有者名称.对象名称” 5、 为客户端网络实用工具提供参数。 6、 sp_dboption ‘DBOA’,’single use’,’true’ 7、 drop table 8、 like,not like,”%”,”_”,字符 9、 Sum(),Count() 10、TranSact_SQL 三、 判断题:(10 分,每题
1 分) 1、√ 2、× 3、× 4、× 5、√ 6、√ 7、× 8、× 9、√ 10、× 四、 简答题:(20 分,1、2 题每题 5 分) 1、 ①第一标准形式:由原子值和主键值组成,数据表中的每一个字段都不可以 再分。 (同一数据表中同类字段不允许重复出现,在一个字段内也不允许放置多 个数据项)②第二标准形式:要求所有的非关键字段完全依赖于主键。(或类似 的解释)③第三标准形式:每一个非主键字段列中没有可传递的的依赖性。(一 个非主键列不能依赖于另一个非主键列) 2、 类型:①INSERT 触发器、②UPDATE 触发器、③DELETE 触发器相对应的语句: ①INSERT 语句、②UPDATE 语句、③DELETE 语句 2、 自定义函数类型:①标量函 数 返回值:单个数据值②内嵌表值函数 返回值:table,③多语句表值函数 返 回值:table4、 权限类型作用:①对象权限 作用:决定用户对数据库对象所 执行的操作,包括用户对数据库中的表、视图、列或存储过程等对象的操作权限 ②语句权限 作用:决定用户能否操作数据库和创建数据库对象③隐含权限 作 用:控制那些只能由预定义系统角色的成员或数据库对象所有者执行的活动。 五、(20 分,1 题 10 分,2 题 5 分,3 题 5 分) 1、(中的英语单词不允许错误,男字只能用单引号括起来,否则不给分;) CREATE TABLE 雇员基本信息表——————————2 分 (NO_ID char(7) not null primary
key,—————————2 分 NAME char(10) not
null,———————————————1 分 SEX char( 2) not null default
‘男’,———————————2 分 AGE int not
null,——————————————————1 分 DEPT varchar(50)
null,————————————————1 分 PHONE varchar(20)
null,———————————————0.5 分 NOTES varchar(50)
null———————————————0.5 分) 2、(中的英语单词不允许错误,日期要用引号括起来,否则不给分) SELECT * FROM 销 售 表 WHERE (selldate >=
'2002-2-15' AND selldate <='2002-4-29')AND deptno = '01'3、(中的大写单词不允许错误,其他不 作 要 求 )ALTER TABLE table1 ADD No_id CHAR(12) NOT NULL
CONSTRAINT table1_unique UNIQUE 六、 (每空 2 分,共 10 分)GROUP BY,HAVING,GROUP BY,HAVING,IN
发布评论