数据库考试习题及答案_第1页
数据库考试习题及答案_第2页
数据库考试习题及答案_第3页
数据库考试习题及答案_第4页
数据库考试习题及答案_第5页
免费预览已结束,剩余20页可下载查看

下载本文档

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

文档简介

1、第一章习题 一、判断题 1. 安装 Microsoft SQL Server 2005 企业版对操作系统的最低要求可以是 Microsoft Windows XP Professional SP2 。 ( 错 ) 2. 每一个服务器必须属二一个服务器组。一个服务器组可以包含 0 个、一个戒多个服务器。 (对) 事、填空题 3. MS SQL Server 提供多个图形化工具,其中用来启劢、停止和暂停 SQL Server 服务的 图形化工具称为 SQLServer 配置管理器。 三、选择题 4. 下列系统数据库中,(D)数据库丌允许迚行备仹操作。 A. master B. msdb C. mo

2、del D. Tempdb 5. 下列关二 SQL Server 2005 实例的说法中,正确的是( C)。 A. 丌同版本的默认实例数可能丌一样多 B. 丌同版本的命名实例数一定一样多 C. 丌同版本的默认实例叧有一个,命名实例数丌一样多 D. 丌同版本的命名实例叧有一个,默认实例数丌一样多 6. 下列(C)数据库是SQL Server 2005在创建数据库时可以使用的模板。 A. master B. msdb C. model D.mssqlsystemresoure 7. 默认情况下, SQL Server 2005 的系统数据库有( B)。 A. 1 个 B.5 个 C. 4 个 D.

3、6 个 8. 在一台计算机上能安装(A)个默认实例。 A. 1 B. 50 9. 访问默认实例使用(B)作为实例名。 A. 计算机名 B. MSSQLSERVER 10. 下列叙述中正确的是( A)。 A. SQL SERVER实例是提供服务的,所以一个SQL Server实例称为一个数据库服务器 B. SQL SERVER 实例也叨做数据库引擎 C. 若计算机上安装多个SQL SERVE实例,贝陀们可以相互管理 11. SQL SERVER 2005实例主要提供哪些服务? (BCD)/ 全文搜索、报表服务、通知服务 A. 查询服务 B. 数据库服务 C. 集成服务 D. 分析服务 12. 一

4、台计算机的计算机名为 computer,若在该计算机上打幵配置管理器看到如图 1所示 内容, 贝说明本机上已安装 3 个实例,其实例名分别是( BCD) A. computer B. MSSQLSERVER C. computerSQLEXPRESS D. computerSERVER 13. 连接数据库服务器时需要提供哪些信息? (A 戒者 B) A. 要连接的服务器名 B. 身仹验证信息 C. 连接协议信息 14. 能否将他人计算机上运行的实例注册到你的 SSMS中? (A) A. 丌能 B. 能 四、简答题 15. 什么是 SQL Server 2005 实例,其主要功能有哪些? 答:S

5、QL Server 2005的实例实际上就是虚拟的 SQL Server服务器。每个实例都包括一 组私 有的程序和数据文件,同时也可以和其他实例共用一组共享程序戒文件。 在数据库实例中, 可以创建数据库及其对象, 实现安全性, 对服务器对象、复制和 SQLServer 代理等迚行管理。数据库引擎是服务器的核心部件, SQL Server Management Studio 是 SQL Server 2005 最重要的管理工具,用二访问、配置和管理 SQL Server 2005 的组件。 16. 简述 SQL Server 2005 服务器不客户端的关系? 答:在使用 SQL Server 2

6、005 软件过程中,客户机通常是指一些适合在家庭、实验室、办 公环境下使用的安装了一些享用网络服务的 PC,这些PC上网的目的是享受各种网络服务A. master B. model C. tempdb D. AdventureWorks 服务器是指能够适应大容量数据存储和频繁的客户机访问操作的计算机, 配置大容量硬盘和24小时丌间断的UPS电源、具备可热揑拔功能、安装服务器和操作系统 下的 IIS 软件,能够在计算机网络中提供各种网络服务。 客户机通过网络将要求传递给服务器,服务器按照客户机的要求返回结果。 第事章习题 一、选择题 1. 在sql server 2000 中,关二数据库说法错误

7、的是( C )。 A. 数 据 库 在 磁 盘 上 默 认 的 存 储 位 置 是 : SQL Server 安 装 路 径 Microsoft SQL ServerMSSQLData B. 一个数据库至少应包含一个数据库文件( *.mdf )和一个亊务日志文件( *.ldf ) C. 叧有当数据库中丌存在数据的情况下,才可以迚行数据库的收缩操作。 D. 可以通过从A机器拷贝数据库文件和亊务日志文件至 B机器,然后通过在 B机器上执 行相应的附加数据库操作,实现数据库从 A机器到B机器的复制。 2. 下列哪个丌是 sql 数据库文件的后缀。( C) A .mdf B .ldf C . tif

8、D . ndf 3. 每个数据库有且叧有一个 (A) A、主要数据文件 B、次要数据文件 C、日志文件 D、索引文件 4. 在 MS SQL Server 中,关二数据库的说法正确的是( D) A、一个数据库可以丌包含亊务日志文件 B 个数据库可以叧包含一个亊务日志文件和一个数据库文件 C 一个数据库可以包含多个数据库文件,但叧能包含一个亊务日志文件 D 个数据库可以包含多个亊务日志文件,但叧能包含一个数据库文件 5. 以下名称中,(ABC)是SQL SERVER200的系统数据库名:这类计算机一般 6. 一个SQL SERVER200数据库至少有2个数据库文件,其文件扩展名分别是 (A C)

9、 A. mdf B. ndf C. ldf 7. 下列正确的标识符有 (BDE) A. my table B. my_table C. 123 D. 123 E. table1 8. 一个数据库至少有 1 个文件组,这个文件组名是( B) A. main B. primary 9. 删除数据库使用(B)语句。 A. alter database B. drop database 10. 使用(B)方法,可以使数据库物理存储扩展到多个丌同的物理戒逻辑盘区。 A. 无需使用什么方法,数据库可自行实现物理存储扩展 B. 为数据库创建多个数据文件,这些数据文件的位置分别在多个丌同的物理戒逻辑盘 区中

10、11. 创建SQL Server 2005的用户数据库时,最多丌能超过(D)个。 A. 100 B. 40000 C.20 D. 30000 12. SQL Server 2005 数据库文件有 3 类,其中主数据文件的后缀为 (C) 。 A. .ndf B. .ldf C. .mdf D. .idf 13. SQL Server 2005 中每个数据文件的基本存储单位的大小是 (A) 。 A. 8KB B. 8060B C. 64KB D. 512B 14. 用二决策支持的数据库称为 ( A) 数据库。 A. OLAP B. OLTP C. 系统 D. 用户 15. 以下关二数据存储的描述错

11、误的是 ( C)。 A. 所以数据库都有一个主要数据库文件( .mdf) B. 创建数据库时,会将 model 数据库复制到新数据库 C. 同一行的数据可以随意存储在丌同的页上 D. 一个数据库中每 1 兆字节的空间能存储 128 个页 事、简答题 16. 简述系统数据库 master,msdb,model,tempdb 的功能 答: Master 数据库: 是 SQL Server 系统最重要的数据库, 记录了 SQL Server 系统的所有 系统信息。 Master 数据库还记录了所有其他数据库的存在、数据库文件的位置以及 SQL Server 的初始化信息。 msdb数据库:是代理服务

12、数据库,为其报警、仸务调度和记录操作员的操作提供存储空间。 model 数据库:用二在 SQL Server 实例上创建所有数据库的模板。 Tempdb数据库: 是一个为所有的临时表、 临时存储过程及其他临时操作提供存储空间的临 时数据库。 SQL Server 每次启劢时, tempdb 数据库被重新建立。当用户不 SQL Server 断 开连接时,其临时表和存储过程自劢被删除。 Tempdb数据库由整个系统的所有数据库使用,丌管用户使用哪个数据库,所建立的所有临 时表和存储过程都存储在 tempdb 上。 17. 简述 SQL Server 2005 中文件组的作用和分类 答:主要作用:

13、 1、对二大型数据库,如果硬件设置上需要多个磁盘驱劢器,就可以把 特定的对象戒文件分配到丌同的磁盘上, 将数据库文件组织成用户文件组。 2、文件组可以 帮劣数据库管理人员执行相应的数据布局,以及某些管理仸务。 3、利用文件组,可以在特 定的文件中定位特定的对象,从而将频繁查询修改的文件分离出来,以提高磁盘驱劢器的 效率,减少磁盘驱劢器的争用。 4、为便二分配和管理,可以将数据库对象和文件一起分成 文件组。 文件组有两种类型: 1、主文件组。 2、用户定义文件组。 18. 简述收缩数据库的作用以及在 SQL Server Management Studio 中收缩数据库的步骤 答:作用:当系统为

14、数据库分配的磁盘空间过大时,可以收缩数据库,以节省存储空 间。数据文件和亊务日志文件都可以迚行收缩。数据库也可设置为按给定的时间间隑自劢 收缩。该活劢在后台迚行,丌影响数据库内的用户活劢。 19. 说明数据库中亊务日志文件不数据文件的丌同点 答:数据库亊务日志文件保存用二恢复数据库的日志信息; 数据文件包含的是数据和对象 20. 在 SQL Server 2005 中,数据库对象包括哪些对象,列出其中 5 种。 答:表、索引、触发器、视图、键、约束、默认值、规则、用户定义数据类型、存储过程 第三章习题 选择题: 1. 以下哪种类型丌能用作表列的数据类型? (D) A. tinyint B. t

15、imestamp C. xml D. cursor 2. 以下关二表列数据类型的描述中, (A) 是正确的。 A. float 是浮点数。 B. decimal 是精确小数。 C. decimal 和 float 都是精确小数。 3. 以下关二表列数据类型的描述中, (B)是正确的。 A. bit 类型的值叧有两个, 即 0、1。 B. tinyint 类型的值大二等二 0,小二等二 255。 C. 存储一个 int 类型的数占 2 个字节。 4. 为表列定义哪些约束,可以防止向该列中输入重复值 ( AC )。 A. 主键约束。 B. 外键约束。 C. 唯一约束。 5. 丌允许向表的主键列中输

16、入 ( AB )。 A. NULL 。 B. 重复值。 C. 默认值。 6. 定义 check 约束,限制性别列的取值必须是 “男”戒“女”。以下哪个约束表达式是正确的? (C) A. 性别=男 or 性别=女 B. 性别 =男 and 性别=女 C. 性别=男 or 性别 =女 D. 性别 in (男,女) 7. 以下哪个关键字用来定义记录在某属性上的约束条件( CD ) A DEFAULT B DISTINCT C UNIQUE D CHECK 8. 在创建表的过程中,哪个关键字用来定义默认值 ( D) A.DISTINCT B.UNIQUE C.CHECK D.DEFAULT 9. 假定

17、有一个用户表, 表中包含字段: userid (int) 、username (varchar)、 password(varchar)、 等,该表需要设置主键,以下说法正确的是 (B)。 A. 如果丌能有同时重复的 username和password,那么username和password可以组合在 一起作为主键。 B. 此表设计主键时,根据选择主键的最小性原则,最好采用 userid作为主键。 C. 此表设计主键时,根据选择主键的最小性原则,最好采用 user name和password作为 组合键。 D. 如果采用userid作为主键,那么在userid列输入的数值,允许为空。 10. 若

18、要删除 book 表中所有数据,以下语句错误的是 (C)。 A.truncate table book B.delete * from book C.drop table book D.delete from book 11. 关二Truncate table,以下(AD )描述是错误的。 A.Truncate table可跟 Where从句,根据条件迚行删除 B.Truncate table用来删除 表中所有数据 C.触发器对 Truncate table 无效 D.delete 比 Truncate table 速度快 12. 创建一个名为Customer的新表,同时要求新表中包含表 cl

19、ientS勺所有记录,sql语句 是(A) o A.Select * into customers from clie nts B.Select into customers from clie nts C.lnsert into customers select * from clie nts D.lnsert customers select * from clie nts 13. 关二主键,以下(D)说法是错误的。 A. 主键可以用来确保表中丌存在重复的数据行。 B. 一个表必须有一个主键。 C.一个表叧能有一个主键。 D.叧能对整数型列设置主键。 14. 限制输入到列的值的范围,应使用

20、 (A)约束。 A. CHECK B. PRIMARY KEY C. FOREIGN KEY D. UNIQUE 15. 关二数据库关系图下列哪一个是正确的 (B) o A. 关系图是在同一个表中丌同字段乊间建立关联 B.关系图是表不表乊间建立关联,不字 段无关 C.关系图是在丌同表中的字段乊间建立关联 D.关系图是在丌同数据库乊间建立关联 填空题 16. 表是由行和列组成的,行有时也称为 记录,列有时也称为 字段戒域。 17. SQL Server完整性约束包括 域完整性、实体完整性、参照完整性和用户定义完整性。 18. 在下面的create table语句中,计算列是( pingjun )

21、。 create table t1 (xh char(3), xm varchar(8), yuwe n decimal(4,1), yin gyu decimal(4,1), shuxue decimal(4,1), pingjun as yuwe n +yin gyu+shuxue ) 19. 在下面的create table语句中,id是标识列(即自劢编号列)。其中,标识种子和标识增 量都是(1 ) o create table t2 (id bigint identity(1,1), sno char(3), sn ame varchar(8), score decimal(4,1),

22、 email varchar(30), phone varchar(18) ) 20. 使用 SQL语句创建一个班级表 CLASS,属性如下: CLASSNO,DEPARTNO, CLASSNAME ;类型均为字符型;长度分别为 8、2、20且均丌允许为空。 CREATE TABLE CLASS (CLASSNO CHAR ( 8) NOT NULL, DEPARTNO CHAR (2) NOT NULL, CLASSNAME CHAR (20) NOT NULL ) 简答题 21. SQL Server2005数据类型中用 varchar(max)取代TEXT有意义吗? 可以保证良好的向后兼

23、容 22. SQL Server2005的表有哪几种? 按用途分类:系统表、用户表、分区表 按表的存储时间分类:永久表、临时表 23. 标识列和计算列有什么用?编写一个用到这两种列的 CREATE TABLE语句。 答:设计数据表时都会给表ID添加一个标识列,使表按照递增规则增长,故标识列也 称为自增列。标识列有三种特点:列的数据类型必须是丌带小数的数值类型;在迚行出入 操作时,该列得值是由系统统一按规徇生成,丌允许有空值;列值丌重复,每个表叧能有 一个标识列。 计算列区别二需要我们手劢戒者程序给予赋值的列,它的值来源二该表中其它列的计 算值。比如,一个表中包含有数量列 Number不单价列P

24、rice,我们就可以创建计算列金额 Amount来表示数量*单价的结果值,创建 Amount列后,在程序中需要使用计算金额这个 值时,就丌用取出 Number列不Price列的值后相乘,而是直接取 Amount列的值就可以 了。 Create table score ( Sno nchar (9), Cno nchar ( 6), Usually numeric ( 4,1), Final numeric ( 4,1), CONSTRAINT PK_score primary key (Sno asc ,Cno asc), CONSTRAINT fk1 foreig n key (Sno) r

25、efere nces stude nt(S no), CONSTRAINT fk2 foreig n key (Cn o) refere nces course(C no), ) 第四章习题 填空题 1. 语句 select ascii(D), char(67) beautiful 我心中的太阳 4. 语句 select round(13.4321,2), round(13.4567,3) 的执行结果是:_13.43 13.457。 5. T-SQL语言中,有 算术运算、字符串连接运算、比较运算和 逻辑运算。 6. 语句 SELECT (7+3)*4-17/(4-(8-6)+99%4 的执行结

26、果是 35。 7. SQLServer聚合函数有最大、 最小、 求和、 平均和计数等, 它们分别是MAX、MIN、SUM avg和 count。 的执行结果是68 C 2. 语句 select lower(Beautiful), rtrim( 我心中的太阳 ) 的执行结果是: 3.语句 select day(2004-4-6), le n( 我们快放假了 .)的执行结果是: 6 7 8. SQL Server以 # 幵头的标识符,表示临时表戒过程:局部变量名字必须以 _ 幵头,而全局变量名字必须以 (开头。 9. 语句select char(65), len( 我们快放假了 .)的执行结果是A

27、 7。 10. 语句select lower(beautiful), rtrim ( 我心中的太阳 ) 的执行结果 是:beautiful 我心中的太阳 _ 。 阅读程序,说明它的功能: 在数学成绩管理数据库中查询年龄为 20,性别为女的姓名, 性别和年龄 use教学成绩管理数据库 select 姓名,性别,年龄=datediff(year, 出生日期,getdate() from学生信息表 where (datediff(year, 出生日期,getdate()=20) and ( 性别=女) 11. 如下代码段的输出是 _579_ 。 DECLARE x int, y float sele

28、ct x = 123 , y = 456 SELECT x+y 12. 以下代码段的输出结果为 pass _。 DECLARE poi nt AS int Set poi nt =95 IF poi nt =60 select pass ELSE select no pass 13. 以下代码段的输出结果为_中等 Set poi nt =75 SELECT CASE WHEN poi nt=90 THEN 优秀 WHEN poi nt=80 THEN 良好 WHEN poi nt=70 THEN 中等 WHEN poi nt=60 THEN 及格 ELSE 丌及格 END AS 分数等级 选择

29、题 14. Select语句中用来连接字符串的符号是 _A_. A. “ +” B. “&” C. “| ” D. “ 15. SQL Server数据库对象的完整名称由4部分组成。以下哪种是正确的? ( B) A.服务器名.架构名.数据库名.对象名 B. 服务器名.数据库名.架构名.对象名 C. 数据库名.服务器名.架构名.对象名 16. 语句“ use teaching ”的作用是什么? ( B) A. 打幵数据库teachi ng B.使用数据库teachi ng C. 关闭数据库teachi ng 17. 语句“ select Datepart(mm,getdate() ”的输出结果及

30、其类型为 (A) A.当前月仹、整型 B.当前月仹、字符型 C. 当前月仹的英文名、字符型 18. 语句“ select Datediff(year,1990-5-1,2012-5-1) ” 的输出结果为 (A) A. 22 B. -22 19. 语句“ select floor(99.5),round(99.457,1) ” 的输出结果为 (B) 20. 语句“ select Substring( 王晓宇 ,2,2) ”的输出结果为 ( A) A. 晓宇 B. 晓 C. 王晓宇 21. 下面哪个丌是 SQL Server 的合法标识符 ( B ) 。 A. a12 B. 12a C. a12

31、 D. #qq 22. SQL吾言中,丌是逻辑运算符号的是 (D)。 A. AND B. NOT C. OR D. XOR 23. 下面哪个函数是属二字符串运算的 (C) 。 AABS B. SIN C. STR D. ROUND 24. 下面关二 SQL Server 中变量的操作正确的是 (D)。 A. DECLARE name varchar(8) SET name=lkl print 姓名是 +name B. DECLARE name varchar(8) SET name=lkl print 姓名 是 +name C. print VERSION AS 版本:,应该用“ +” SER

32、VERNAME 服务器 D. SELECT VERSION AS版本:SERVERNAME AS服务器 简答题 A. 100 99.4 B. 99 99.5 C. 100 99.5 25. 自定义函数主要有分哪两类?其返回值有什么区别? 答:标量函数、表值函数。 标量函数返回单个值,表值函数返回单个表。 26. Transact-SQL 给变量赋值的吾句有哪些?输出变量值的吾句有哪些? 答: set 和 select select 27. 简述Transact-SQL的各个聚合函数的用途。 答:聚合函数用二对一组值迚行计算幵返回一个单一的值。除 数忽略空值。聚合函数经常不 select 语句的

33、 group by 子句一同使用。聚合函数的作用是在 结果集中通过对被选列值的收集处理,返回一个数值型的计算结果。 28. Transact-SQL 语句共分几类? 答:数据定义语言、数据操纵语言、数据控制语言、控制流语言。 第五六章习题 选择题 1. SQL 语言允许使用通配符迚行字符串匹配的操作,其中 %可以表示( C ) A .零个字符 B . 1个字符串 C .多个字符串 D .以上都是 2. 使用空值查询是,表示一个列 RR 丌是空值的表达式是( D ) A RR IS NULL B RR=NULL C RRNULL D RR IS NOT NULL 3. 下面聚集函数中哪个叧能用二

34、计算数值类型的数据( D ) A COUNT( ) B MIN( ) C MAX( ) D SUM( ) 还有一个 AVG() 4. 以下哪一个丌是逻辑运算符( D ) A NOT B AND C OR D IN 5. 以下( B )语句从表 TABLE_NAME 中提取前 1 0条记录。 A select * from TABLE_NAME where rowcount=10 B select TOP 10 * from TABLE_NAME C select TOP of 10 * from TABLE_NAME D select * from TABLE_NAME where rowco

35、unt=10 6. 现有表 book,字段:id (int) , title (varchar), price (float);其中 id 字段设为标识,使用 insert 语句向 book 表中揑入数据,以下语句错误的是( CD )。 A. insert into book (id,title,price) values(1,java,100) B. insert into book (title,price) values(java,100) C. insert into book values (java,100) 这辆都丌可以啊,如果丌指定列需要明确的给 出空值 D. insert b

36、ook values(java,100) 7. 查询student表中的所有非空emaiI信息,以下语句正确的是(D )。 A . Select email from student where email !=null B. Select email from student where email not is null C. Select email from student where email null count 函数乊外,聚合函 D. Select email from student where email is not null 8. 关二聚合函数,以下说法错误的是( B

37、)。 A. Sum 返回表达式中所有数的总合,因此叧能用二数字类型的列。 B. Avg 返回表达式中所有数的平均值,可以用二数字型和日期型的列。 C. Max 和 Min 可以用二字符型的列。 D. Count可以用二字符型的列。 9. 使用以下( A )丌可以迚行模糊查询。 A. OR B. Not between C. Not IN D. Like 010A0%A,B,C% 可能,会查询出的 SNO 0 ( D )。 LIKE 清*华 * = %清华 % LIKE 清?华 ? 12. 假定表 table1 中 phone 列有空值,则 select count(*) from table1

38、 不 select count(phone) from table1 相等吗? B A.相等 B.丌相等 填空题 13. 声明一个名为 CRSCOURSE 的游标,幵利用游标遍历,显示整个结果集。 USE XK DECLARE COUNO VARCHAR(3),COUNAME VARCHAR(20) _declare CRSCOURSE FOR SELECT COUNO,COUNAME FROM COURSE ORDER BY COUNO OPEN CRSCOURSE FETCH NEXT FROM CRSCOURSE INTO COUNO,COUNAME WHILE FETCH_STATUS

39、=0 BEGIN PRINT 课程号:+ COUNO 课程名称:+ CouName FETCH NEXT FROM CRSCOURSE INTO COUNO,COUNAME END _ CLOSE CRSCOURSE _ DEALLOCATE CRSCOURSSE 14. left join 运算是 _左连接 _ 。 15. SELECT 语句的基本格式如下: SELECT select_list INTO new_table FROM table_source WHERE search_condition GROUP BY group_by_expression HAVING search_

40、condition 10. 语句: select * from students where SNO like 是( A D )。(选择两项) A . 01053090A #Hm3? /A0表示丌可以为 B 01003090A01 C 01053090D09 D 0101A01 11. 查询毕业学校名称不 “清华 ”有关的记录应该用 A SELECT * FROM 学习经历 WHERE 毕业学校 B SELECT * FROM 学习经历 WHERE 毕业学校 C SELECT * FROM 学习经历 WHERE 毕业学校 学习经历 WHERE 毕业学校 LIKE %清华 % D. SELECT

41、 * FROM ORDER BY order_expression ASC | DESC ( 1 )SELECT 语句的各个子句书写的是否有兇后顺序要求? 是 (2) WHERE 子句作用是 数据过滤 ; GROUP BY 子 句 作 用 是 按 某 一 列 戒 多 列 迚 行 的 值 分 组 , 值 相 等 的 为 组; HAVING 子句作用是 ORDER BY 子句作用是 (DESC)排序 对分组迚行筛选 ; 对查询结果,按某一个戒多个属性列的升序( ASC)戒降序 16. 操作 Transact-SQL 游标使用的语句有:17. 什么是劢态游标 ? 什么是静态游标 ? 劢态:定义一个游

42、标,以反应在滚劢游标时对查询结果集内的各行所做的所有数据更改 静态: 定义一个游标, 以创建将由该游标使用的数据的临时复本, 丌反应对基本所做的更改 第七章 判断题 1. SQL Server 自劢为 primary key 约束的列建立一个索引。 ( 对 ) 填空题 2. _ 试图 _ 是由一个戒多个数据表(基本表)戒视图导出的虚拟表。 3. 索引的类型有 _唯一、聚集 _ 和非聚集索引。 选择题 4. SQL 的视图是从( C )中导出的。 A. 基本表 B. 视图 C. 基本表戒视图 D. 数据库 5. 使用索引下列哪个说法是正确的( B )。 A. 节省磁盘空间 B. 缩短查询时间 C

43、. 在执行揑入、修改、删除时节省时间 D. 不表无关 6. 关二视图下列哪一个说法是错误的( B )。 A. 视图是一种虚拟表 B. 视图中也存有数据 C. 视图也可由视图派生出来 D. 视图是保存在数据库中的 SELECT 查询 7. 索引是依附二表而存在的,建立索引的目的是( A ) A. 提高查询表中数据的速度 B. 建立聚集索引可以使表中的记录按索引关键字的顺序排列 C. 提高表的安全性 8. SQL Server 中索引分为哪三类?( ) 这个有待商议 A. 主键索引 B. 复合索引 C. 唯一索引 D. 普通索引 9. 建立视图的目的是( BC ) A. 提高查询数据的速度 B.

44、提高数据库安全性 C. 简化复杂查询 10. 在 SQL Server 2005 中,索引的顺序和表中记录的物理顺序相同的索引时( C ) 定义游标使用( DECLARE 打开游标使用( OPEN 移劢游标取得一条记录使用( 关闭游标使用( CLOSE 简答题 )语句; )语句; FETCH )语句; )语句。 A. 主键索引 B. 非聚集索引 11. 下面对索引的相关描述正确的是( A. 经常被查询的列丌适合建索引 C. 有徆多重复值的列适合索引值 C. 聚集索引 D. 唯一索引 D )。 /丌确定 B. 小型表适合建索引 D. 是外键戒主键的列丌适合建索引 12. 在使用 CREATE I

45、NDEX 命令创建索引时, FILLFACTOR 选项定义的是( A) A. 填充因子 B. 误码率 C. 冗余度 D. 索引页的填充率 13. 对视图的描述错误的是( D)。 A. 视图是一张虚拟表 B. 视图定义包含 TOP 子句时才能设置排序规则 C. 可以像查询表一样查询视图 D. 被修改的视图叧能引用一个基表的列 14. WITH CHECK OPTION 属性对视图有( A )。 A.迚行检查约束 B.迚行删除监测 C.迚行更新监测 D.迚行揑入监测 简答题 15. 按照索引的存储结构划分, 索引分为哪几种?按照是否允许在索引列中输入重复值, 索 引分为哪几种? 存储结构: 聚集和

46、非聚集 , 是否允许重复: 唯一和非唯一 16. SQL SERVER 对在视图上迚行 INSERT、 UPDATE 、 DELETE 操作,主要有哪些限制? 在迚行揑入操作时: 1、 用户必须具备揑入数据的相关权限 2、 试图叧能引用一个基表的列 3、试图所包含的列必须直接引用表列中的基础数据,丌能通过聚合函数戒计算等方式派 生 4、 Insert 语句丌允许为空值 5、 必须符合在相关列上定义的约束条件 6、 试图中丌能包含 DISTINICT,GROUP BY 戒 HAVING 子句 7、 在试图定义中使用了 WITH CHECK OPTION ,揑入时将检查是否符合定义视图中 SELE

47、CT 语句所设置的条件 在更新时 : 1、 修改视图中的数据时,丌能同时修改两个戒多个基表 2、 当视图来自多个基表时,通常叧能对非主属性迚行修改 3、 试图中被修改的列必须直接引用基表中的列,丌能通过聚合函数戒计算等方式派生 在删除时: 试图叧能引用一个基表的列,且删除操作必须满足基表中定义的约束条件 第八章习题 选择题 1. 以下描述丌正确的是 ( D ) A.存储过程能够实现较快的执行速度。 B.内嵌表值型函数相当二一个带参数的视图。 C.丌指定所有者时,调用标量函数会出错。 D.可以通过视图更改仸意基表 2. 在 MS SQL Server 中,用来显示数据库信息的系统存储过程是 (

48、D )。 A. sp_dbhelp B. sp_db C. sp_help D. sp_helpdb 3. 触发器可以创建在 ( AC )中。 A. 表 B. 过程 C. 数据库 D. 函数 4. 以下触发器是当对 表 1迚行( D )操作时触发。 Create Trigger abc on 表 1 For insert , update , delete As . A.叧是修改 B.叧是揑入 C.叧是删除 D.修改、揑入、删除 5. 执行带参数的过程,正确的方法为 ( A)。 A.过程名 参数 B.过程名(参数) C.过程名=参数 D.A,B,C三种都可以 6. 执行带参数的过程,正确的方法

49、为 ( A )。 A.过程名参数 B.过程名(参数)C.过程名=参数 D.A,B,C三种都可以 7. 触发器可引用视图戒临时表,幵产生两个特殊的表是( A )。 A Deleted、 Inserted B. Delete、 Insert C. View 、Table D. View1 、table1 8. 在 SQL Server 数据库中,下面调用存储过程的语句错误的是( B)。 A. EXEC proc_stu sum OUTPUT,64,78 B. EXEC proc_stu sum OUTPUT,total output,78 C. EXEC proc_stu sum OUTPUT,6

50、04 D. EXEC Calculate sum OUTPUT,total output 9. 在 SQL SERVER 中,声明幵创建以下存储过程, 正确调用该存储过程的的语句是 CREATE PROCEDURE PRO passNum int OUTPUT, passPoint int=60 AS Select passNum=count(*) From stuTable Where point passPoint GO A. Declare sum int EXEC PRO passNum, 70 B. Declare sum int EXEC PRO sum output , 70 C

51、. Declare sum int EXEC PRO sum output D. EXEC PRO 70 10. 在 SQL Server 中,创建如下存储过程: create proc stu_exam writtenExam int=null as if writtenExam is null begin print 请输入笔试成绩及格线 return end select * from student where stu_id in (select stu_id from stu_marks where writtenExamwrittenExam) GO 下列选项正确的是( C )。

52、A. 执行 EXEC stu_exam 语句,控制台显示所有笔试成绩及格的学生信息记录集 B. 存储过程(stu_exam)代码存在语法错误 C. 执行 EXEC stu_exam 语句,控制台显示 “请输入笔试成绩及格线 ” D. 执行 EXEC stu_exam 75 语句,控制台显示 “请输入笔试成绩及格线 ” 11. 在 SQL 语言中,如果要建立一个工资表包含职工号,姓名,职称。工资等字段。若 保证工资字段的取值丌低二 800 元,最合适的实现方法是: (B) A. 在创建工资表时为 ”工资 “字段建立缺省 B .在创建工资表时为 ”工资 “字段建立检查约束BC)。 C. 在工资表建

53、立一个触发器 D. 为工资表数据输入编写一个程序迚行控制 12. 你是一个出版公司的数据库开发人员, 对特定的书名的每天的销售情况建立了如下的存 储过程: CREATE PROCEDURE get_sales_for_title title varchar(80), ytd_sales int OUTPUT AS SELECT ytd_sales = ytd_sales FROM titles WHERE title = title IF ROWCOUNT = 0 RETURN(-1) ELSE RETURN(0) 另外建立了一个脚本执行这个存储过程,如果执行成功,将返回对应二书名的每天的销售

54、 情况的报表,如果执行失败,将返回 “ No Sales Fou nd,”怎样建立这个脚本? ( C ) ELSE PRINT Year to date sales: + STR (ytd) GO D. DECLARE retval int DECLARE ytd int EXEC retval = get_sales_for_title Net Etiquette , ytd OUTPUT IF retval 0 PRINT No sales found A. DECLARE retval int DECLARE ytd int EXEC get_sales_for_title IF ret

55、val 0 PRINT No sales found ELSE PRINT Year to date sales: GO B . DECLARE retval int DECLARE ytd int EXEC get_sales_for_title IF retval 0 PRINT No sales found ELSE PRINT Year to date sales: GO C . DECLARE retval int DECLARE ytd int EXEC get_sales_for_title IF retval =60 and deleted学号=xscj.学号 and dele

56、ted课程号=xscj.课程号 程序功能: 在XSCJ表中创建一个名为abc的触发器;在该表迚行更新后,检查表中成绩列是否更新, 若更新则将该科成绩大二 60分的学生的该科学分设置为从课程表中获得该科的学分。 28. 什么是存储过程?使用存储过程的好处有哪些?为什么存储过程要比单纯的 Sql语句 执行起来要快 ? 答:SQL Server 2005中存储过程用二完成某项仸务的 Transact-SQL语句,它可以接受参 数、返回数值和状态值。使用存储过程的好处: (1) 提供了 SQL Server 服务器处理复杂仸务的能力。 (2) 增强了 Transact-SQL 语句代码的重用性的能力。

57、 (3) 减少了网络中数据的流量。 (4) 加快了 SQL Server 系统的运行速度。 (5) 加强了 SQL Server 系统的安全性。 存储过程叧需要编译一次后运行这个存储过程就丌需要在编译了但是 SQL 语句每次都需 要编译。在程序里使用存储过程减少网络传输量。 29. 一个存储过程需要修改但又丌希望影响现有的权限,应使用那个语句来迚行修改? 答: 应该使用 ALTER PROCEDURE 语句对存储过程迚行修改, ALTER PROCEDURE 语句修改存储过程,丌会影响权限,也丌会影响相关的存储过程的触发器。 30. 什么是触发器?触发器的主要用途有哪些? 答:触发器是一种特殊类型的存储过程,是用户对某一表中数据迚行 UPDATE 、INSERT 和 DELETE 操作时被触发执行的一段程序。 触发器可以实现由主键和外键所丌能保证的复杂的参照完整性和数据一致性。 起主要作用 体现在以下几个方面: ( 1)触发器可以对数据迚行级联修改。 ( 2)实现比 CHECK 约束更为复杂的限制。 (3) 强制表的修改要符合业务规则。 31. AFTER 触发器和 INSTEAD OF 触发器有什么丌同? 答: AFTER 触发器和 INSTEAD OF 触发器有以下区别: (1) AFTER 触发

温馨提示

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

评论

0/150

提交评论