1、第 1 页 共 20 页SQL SERVER 数据库应用复习资料一、考试题型及分数比例1、单项选择题(每空 2 分,共 40 分)2、填空题(每空 1 分,共 20 分)3、简答题(每题 5 分,共 10 分)4、综合应用题(每题 10 分,共 30 分)二、复习题下面按章给出第 1 章第 10 章的复习题。第 1 章 数据库基础概述一、单项选择题1. 数据库系统管理阶段的主要优点表现在_。(A)数据共享性高 (B)数据冗余度低 (C)数据与程序的独立性高 (D)以上全对答案:A2. SQL Server 是一种基于_ 的数据库管理系统软件。(A)层次模型 (B )网状模型 (C )关系模型
2、(D)数据模型答案:C3数据操纵语言(DML)提供用户对数据库进行数据的查询和处理操作,在 SQL Server中,通常不包括_语句。(A)Insert (B)Update (C)Delete (D)Create答案:D4_的主要任务是决定数据库的内容,对数据库进行修改和维护,对数据库的运行状态进行监督,并且管理用户帐号、备份和恢复数据库以及提高数据库的运行效率。(A)系统管理员 (B)数据库管理员 (C)应用程序员 (D)操作员答案:B5 ,一个表的主键(Primary Key)是由一个或多个字段组成,其值具有唯一性,而且不允许为空(NULL) ,其主要作用是_。(A)唯一地标识表中的每条记
3、录 (B)自动生成标识数据(C)快速实现记录定位 (D)以上都不对答案:A6.一个数据库可能包含多个表,一般通过_使这些表之间关联起来。(A)热键 (B)快速键 (C)外键 (D)快捷键答案:C第 2 页 共 20 页7在关系数据库系统中,设计表时可对表中的一个字段或多个字段的组合设置约束条件,让 DBMS 检查数据是否符合约束条件,约束一般可以分为_。(A)表级约束和字段级约束 (B)主键约束和外键约束(C)唯一性约束和检查约束 (D)缺省约束和空值约束答案:A8主键约束(Primary Key)和唯一性约束( UNIQUE)都可以保证表中记录不重复,二者主要区别是_。(A)主键约束不允许空
4、值,唯一性约束允许出现一次空值(B)主键约束允许出现一次空值,唯一性约束不允许空值(C)二者都允许一次空值 (D)二者都不允许出现空值答案:A9.在学生数据库中,一般学生实体与课程实体之间的关联关系是_。(A)一对一 (B)一对多 (C)多对多 (D)无关联关系答案:C10.关系型数据库的设计,E-R 图通常是由_三种基本要素组成。(A)实体、属性和联系 (B)对象、事件和方法(C)实体、对象和事件 (D)实体、类和属性答案:A11.数据库的设计一般都需要经历需求分析、概念设计、实现设计和物理设计几个阶段,_实现 E-R 模型向某一特定 DBMS 能够接受的逻辑模型的转换,对关系型数据库而言,
5、主要完成表结构和表关联的设计。(A)需要分析 (B)概念设计 (C)实现设计 (D)物理设计答案:12. E.F.Codd 提出的关系规范化理论通常用于指导关系型数据库的设计,它包括1NF、2NF、3NF 三条规则,通常称为三范式。若表中每个字段都不可再分,且它的每个非主键字段完全依赖于主键,则称该数据库表属于_。(A)1NF (B )2NF (C)3NF (D )4NF答案:B二、填空题1随着计算机技术的发展,数据管理的方法也在发展,大体上可以将其划分为_、_和_三个阶段。答案: 人工管理阶段、文件管理阶段、数据库系统管理2一个完整的数据库系统一般由_、_和_三个部分组成。答案: 数据库、数
6、据库管理系统和用户3在数据库领域中最常用的数据模型包括:_、_和_三种。答案:概念数据模型、逻辑数据模型和物理数据模型4数据库管理系统是一种在操作系统支持下的系统软件,主要帮助用户建立、使用和管第 3 页 共 20 页理数据库,通常包括:_、_以及管理和控制程序三部分。答案: 数据定义、数据操作5数据库用户是数据库系统的重要组成部分,通常分为系统管理员、_、_和_。答案:数据库管理员、应用程序员、操作员。6在关系数据库系统中,表间的关联关系一般通过建立外键约束来实现,表间的关系方式按记录对应关系分为_、_和_三种。答案: 一对一、一对多、多对多三、简答题1什么是数据库?答:数据库是存储在计算机
7、系统内的有结构的数据的集合,通俗地讲,这些数据是被数据库管理系统按一定的组织形式存放在各个数据库文件中,可以被多个用户所共享,具有数据的共享性高、冗余度低、独立性高等特点。2简述数据库管理系统及组成答:数据库管理系统是一种在操作系统支持下的系统软件,主要帮助用户建立、使用和管理数据库,通常包括:数据描述语言(DDL) 、数据操纵语言( DML)以及管理和控制程序(DCL)三部分。3什么是关系型数据库?答:关系型数据库是指一些相关的表和其他数据库对象(如:索引、视图、存储过程和触发器等)构成的集合,在关系型数据库中,信息存放在二维表格结构的表中,一个关系型数据库包含多个相互关联的数据表,每个表由
8、若个行(记录)和若干列(字段)构成。4简述数据完整性及数据完整性的类型答:数据完整性是用于保证关系型数据库中数据的正确性和可靠性的一种机制。数据库完整性分为:实体完整性、域完整性、参照完整性和用户自定义完整性。第二章 SQL Server 2000 简介一、单项选择题1.SQL Server 2000 提供了很多实用的管理工具,使用最多的管理工具主要包括_。(A)企业管理器 (B)查询分析器 (C)事件探查器 (D)A 和 B答案:D2._是 SQL Server 2000 用于管理服务器、数据库以及数据表、视图、存储过程、触发器、索引等数据库对象的管理工具。(A)企业管理器 (B)查询分析器
9、 (C)事件探查器 (D)A 和 B答案:A3._是 SQL Server 2000 用于执行 Transact-SQL 命令等脚本程序,以查看、分析和处理数据库中数据的管理工具,对其操作的熟练程度是衡量 SQL Server 用户水平的重要标准。第 4 页 共 20 页(A)企业管理器 (B)查询分析器 (C)事件探查器 (D)A 和 B答案:B二、填空题1. SQL Server 2000_主要负责服务器的配置和客户端的连接,它是一个图形化的界面,用于启动、暂停和停止 SQL Server 服务、SQL Server Agent 服务和 DTC 服务。答案:服务器组件第 3 章 SQL S
10、erver 数据库管理一、单项选择题1.一个数据库包含多个不同的数据库对象,_不是 SQL Server 2000 中的数据库对象。(A)表 (B)视图 (C)查询 (D)存储过程答案:C2.在安装 SQL Server 2000 后,系统自动建立了 4 个系统数据库和两个样本数据库,_不是系统自动创建的系统数据库。(A)master (B)tempdb (C)model (D)student答案:D3.在 SQL Server 2000 中创建数据库的 Transact-SQL 命令是_。(A)CREATE DATA (B ) CREATE DATABASE(C)DEFINE DATA (D
11、)DEFINE DATABASE答案:B4.在 SQL Server 2000 中修改数据库的 Transact-SQL 命令是_。(A)ALTER DATABASE (B)ALTER DATA(C)UPDATE DATA (D)UPDATE DATABASE答案:A5.在 SQL Server 2000 中,删除数据库“student”的 Transact-SQL 命令是_。(A)DELETE DATABASE STUDENT (B)DELETE DATA STUDENT(C)DROP DATABASE STUDENT (D)DROP DATA STUDENT答案:C二、填空题1 ,数据库分
12、为_和_两种类型。答案:关系数据库、层次数据库2在 SQL Server 2000 中,一个数据库由 _和_两部分组成。答案: 主数据文件、日志文件3 ,一个数据库至少包含一个数据库文件和一个事务日志文件,主数据库文件的扩展名为_,事务日志文件的扩展名为_。第 5 页 共 20 页答案:.mdf .ldf三、综合应用题1试用 Transact-SQL 命令建立一个数据库“student” ,数据库文件的文件名为“student_data.MDF”,初始容量为 1MB,最大容量为 10MB,事务日志文件的文件名为“student_log.LDF”,初始容量为 1MB,最大容量为 5MB。文件存放
13、在“E:DATABASE”文件夹中。答案:create database studenton ( name=student_data,filename=e:databasestudent_data.mdf,size=1MB,maxsize=10MB )log on ( name=student_log,filename=e:databasestudent_log.ldf,size=1MB,maxsize=5MB )第四章 表与视图一、单项选择题1.在 SQL Server 2000 中,创建表的 Transact-SQL 命令是 _。(A)CREATE TABLE (B)DEFINE TABL
14、E(C)ALTER TABLE (D)DESCRIBE TABLE答案:A2.在 SQL Server 2000 中,使用 ALTER TABLE 命令修改表结构,其中 ADD 短语的作用是_。(A)删除一个字段 (B)修改一个字段(C)增加一个新字段 (D)增加一条新记录答案:C3.在 SQL Server 2000 中,_是删除 Student_info 数据表中 Address 字段的正确的Transact-SQL 命令。(A)ALTER TABLE Student_Info DROP COLUMN Address(B)ALTER TABLE Student_Info DELETE CO
15、LUMN Address(C)UPDATE TABLE Student_Info DROP COLUMN Address(D)UPDATE TABLE Student_Info DELETE COLUMN Address答案:A4.在 SQL Server 2000 的 INSERT 命令中,如果省略表名后的字段名列表,表明表中的所有列都要插入数据,则对 VALUES 短语中给出的字段值列表要求 _。(A)必须给出表中所有字段的字段值,但值顺序可以与表中字段顺序不一致(B)必须给出表中所有字段的字段值,且值顺序必须与表中字段顺序相一致(C)不一定给出所有字段值,未给出的值取空值(D)不一定给出
16、所有字段值,未给出的值取默认值第 6 页 共 20 页答案:B5.将 Student_Info 数据表中“陈白露”同学的 Student_Sex 字段值改为男性,_是正确的 Transact-SQL 命令。(A)ALTER Student_Info SET Student_Sex=男 Where Student_Name=陈白露(B)ALTER Student_Info SET Student_Sex=男 Where Student_Name=“陈白露”(C)UPDATE Student_Info SET Student_Sex=男 Where Student_Name=陈白露(D)UPDAT
17、E Student_Info SET Student_Sex=男 Where Student_Name=“陈白露”答案:C6.将 Student_Info 数据表中出生日期(Born_Date,DateTime 类型)是 1980 年出生的学生记录删除,_是正确的 Transact-SQL 命令。(A)DELETE FROM Student_Info Where Born_Date=1980(B)DELETE FROM Student_Info Where YEAR(Born_Date)=1980(C)DROP FROM Student_Info Where Born_Date=1980(D)
18、DROP FROM Student_Info Where YEAR(Born_Date)=1980答案:B7.删除数据表 Student_Info 的正确的 Transact-SQL 命令是_。(A)DELETE TABLE Student_Info (B ) DELETE FROM Student_Info(C)DROP TABLE Student_Info (D)DROP FROM Student_Info答案:C二、填空题1在 SQL Server 2000 中,字符型包括 Char 和 Varchar 两种类型,其中 Char 又称为_,Varchar 又称_,字符型数据最多包含的字符
19、数目是_。答案:固定长度字符型、可变长度字符型、8000三、简答题1简述视图基本概念及使用视图的好处?答:视图是一种常见的数据库对象,它提供了另外一种查看和存放数据的方法,类似于表对象,采用二维表格的形式显示数据,但视图是虚拟表,它的数据来源于一个或多个表甚至是视图。使用视图的好处表现为:.限制用户检索表中的数据:视图相当于一个“窗口”,可以只显示用户需要的数据。.方便数据的操作:视图可以将几个表中的数据集中到一起,方便用户操作和使用。.提高数据库操作的安全性。2简述 DELETE FROM table_name 命令与 DROP TABLE table_name 命令的区别。答:DELETE
20、 FROM table_name 命令的作用是删除指定表中满足条件的数据记录,删除对象是表中的数据记录。DROP TABLE table_name 命令的作用是删除指定的数据表,包括表结构和表数据记录,删除对象是表。四、综合应用题1使用 CREATE TABLE 命令创建数据表 Student_Info,表结构如下表所示。字段名 字段类型 字段含义 备注第 7 页 共 20 页Student_ID Int 学号 主键Student_Name Char(10) 姓名 非空Student_Sex Char(2) 性别 非空Born_Date DateTime 出生日期 可空Department C
21、har(20) 院系 可空Address Varchar(30) 家庭住址 可空Tele_Number Char(8) 电话 可空答案:CREATE TABLE Student_Info( Student_ID Int Not NULL Primary Key,Student_Name Char(10) Not NULL,Student_Sex Char(2) Not NULL,Born_Date DateTime,Department char(20),Address Varchar(30),Tele_Number Char(8)2在 Student_Info 数据表中有 Born_Date
22、 字段(出生日期,DateTime 类型) ,试用Transact-SQL 命令创建一个视图 Student_View,列出 80 年代出生的学生全部信息。答案:CREATE VIEW Student_ViewASSELECT * FROM Student_Info WHERE YEAR(Born_Date)=1980 AND YEAR(Born_Date)100 (E)NUM=100 (F)NUM%2=0(G)NUM MOD 2=0 (H )NUM%2=0答案:B C H7下面程序的功能是统计 1 到 100 中所有 3 的倍数的个数,阅读程序并选择正确答案。DECLARE I INT,CN
23、T INTSET I=0SET _WHILE _BEGINSET I=I+1IF _CONTINUEELSECNT=CNT+1ENDPrint CNT(A)CNT=0 (B)CNT=0 (C)I100(E)I0 (H)I%3=0 AND 成绩100BEGINROLLBACKRAISERROR(成绩必须在 0 到 100 之间!,16,1)END第九章 备份恢复一、单项选择题1.在 SQL Server 2000 中,备份数据库的 Transact-SQL 语句是 _。(A)BACKUP DATABASE (B)COPY DATABASE(C)NCOPY DATABASE (D )RESTORE
24、 DATABASE答案:A2.在 SQL Server 2000 中,恢复数据库的 Transact-SQL 语句是 _。(A)STORE DATABASE (B)RESTORE DATABASE(C)NCOPY DATABASE (D )BACKUP DATABASE答案:B二、简答题1简述数据库备份的基本概念和过程。答:数据库备份是指对数据库的完全拷贝,包括数据库的所有数据、事务日志以及其它数据库对象。备份数据库的过程就是,首先将事务日志写到备份设备上,然后根据事务在备份设备创建相同的数据库、数据库对象以及拷贝数据的过程。2简述数据库恢复的基本概念。答:数据库恢复是数据库备份的逆过程,在数
25、据库出现问题时,系统管理员通过使用数据库备份和事务日志备份将损坏的数据库恢复到故障前的状态,也就是将数据库备份加载到系统中的过程。3简述导入导出的基本概念。答:导入导出是指 SQL Server 数据库中的数据与外部数据源(如:EXCEL 数据)进行转第 18 页 共 20 页换的过程。导入是指从 SQL Server 外部数据源中检索出数据,并且将数据插入到 SQL Server 数据库中的过程。导出是导入的逆过程,是指将 SQL Server 数据库中的数据分析成某特定环境下用户指定的外部数据源数据的过程。第十章 系统安全管理一、单项选择题1.在 SQL Server 2000 中,创建
26、Windows NT 认证模式登录帐号的系统存储过程是_。(A)SP_grantlogin ( B)SP_revokelogin (C)SP_addlogin (D)SP_addrole答案:A2.在 SQL Server 2000 中,创建 SQL Server 认证模式登录帐号的系统存储过程是 _。(A)SP_grantlogin ( B)SP_revokelogin (C)SP_addlogin (D)SP_addrole答案:C3.在 SQL Server 2000 中,_ 不是固定服务器角色。(A)sysadmin (B) dbcreator (C )serveradmin (D)d
27、bowner答案:D4.在 SQL Server 2000 中,_ 不是固定数据库角色。(A)db_owner (B) db_creator (C )db_accessadmin (D)public答案:B5.在 SQL Server 2000 中,将登录帐号添加为某固定服务器角色成员的系统存储过程是_。(A)SP_droprolemember (B)SP_addlogin(C)SP_grantdbaccess (D )SP_addrolemember答案:D6.在 SQL Server 2000 中,将登录帐号添加为某数据库用户的系统存储过程是_。(A)SP_adduser (B)SP_ad
28、dlogin(C)SP_grantdbaccess (D )SP_addrolemember答案:C7.在 SQL Server 2000 中,当登录帐号添加为某数据库用户后,通常还需要授予用户操作权限,_不是授权的方法。(A)使用系统存储过程 SP_addrolemember 使之成为某固定数据库角色的成员(B)使用 GRANT 命令单独授予某项操作权限(C)使之成为用户自定义数据库角色的成员(D)使用系统存储过程 SP_grantright 单独授予某项操作权限答案:D第 19 页 共 20 页8.SQL Server 2000 的对象权限决定用户对数据库对象执行操作的权力,_不是正确的对
29、象权限。(A)SELECT (B)INSERT (C)EXECUTE (D )CREATE答案:C9. SQL Server 2000 的语句权限决定用户能否操作数据库和创建数据库对象,_不是正确的语句权限。(A)CREATE DATABASE (B)ALTER DATABASE(C)BACKUP DATABASE (D ) CREATE TABLE答案:C二、填空题1在 SQL Server 2000 中,有两种身份认证模式,即: _和_。答案: windows 身份验证模式 windows 和 SQL SERVER 混合验证模式2在 SQL Server 2000 中,可授予数据库用户的权
30、限分三种,即:_、_和隐含权限。答案:对象权限、语句权限三、简答题1简述 SQL Server 2000 中的权限、角色以及角色类型。答:权限是指用户对数据库对象的使用及操作的权力。角色是权限的集合体。SQLServer中的角色分为:固定服务器角色、固定数据库角色和用户自定义数据库角色三种。固定服务器角色是关于操作服务器的权限,固定数据库角色是关于操作数据库的权限,用户自定义数据库角色是根据需要由用户定义的数据库角色。四、综合应用题1首先创建一个 SQL Server 登录帐号“xiaoj” ,密码为“xiaoj” ,并使之成为数据库student 的用户,且用户名为“xiao1” ,然后使之
31、成为固定数据库角色 db_owner 的成员,试写出正确的 Transact-SQL 语句序列。答:USE studentEXEC SP_addlogin xiaoj, xiaojEXEC SP_grantdbaccess xiaoj, xiao1EXEC SP_addrolemember db_owner, xiao12首先创建一个 SQL Server 登录帐号“wei ”,接着使之成为数据库 student 的用户,用户名为“w1” ,然后在数据库 student 中创建一个用户自定义数据库角色 DB_role1,它被授予对表 Student_Info 的 SELECT、INSERT、UPDATE 和 DELETE 对象权限,最后将“wei”添加成为 DB_role1 的成员,试写出正确的 Transact-SQL 语句序列。答:USE studentEXEC SP_addlogin weiEXEC SP_grantdbaccess wei, w1EXEC SP_addrole DB_role1第 20 页 共 20 页GRANT select,insert ,update,delete ON Student_Info TO DB_role1EXEC SP_addrolemember DB_role1, w1