复习题SQL.docx

上传人:b****4 文档编号:11867616 上传时间:2023-04-06 格式:DOCX 页数:13 大小:31.03KB
下载 相关 举报
复习题SQL.docx_第1页
第1页 / 共13页
复习题SQL.docx_第2页
第2页 / 共13页
复习题SQL.docx_第3页
第3页 / 共13页
复习题SQL.docx_第4页
第4页 / 共13页
复习题SQL.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

复习题SQL.docx

《复习题SQL.docx》由会员分享,可在线阅读,更多相关《复习题SQL.docx(13页珍藏版)》请在冰豆网上搜索。

复习题SQL.docx

复习题SQL

复习题SQL

 

 

————————————————————————————————作者:

————————————————————————————————日期:

 

1、所谓数据库就是存放数据的地方,是需要长期存放在计算机内的、有组织的,、可共享的_的数据集合。

2、数据库可以使用多种类型的系统模型,常见的有层次模型_,网状模型、和关系模型。

_ 

3、所谓关系数据库就是基于关系模型的数据库,在计算机中,关系数据库是数据和数据库对象_

4、数据表中的行通常叫做记录或元组它代表众多具有相同属性的对象中的一个。

5、数据表中的列通常叫做字段或属性,它代表相应数据表中存储对象的共有属性。

6、关系模型提供可3种完整性规则:

实体完整性、参照完整性、和用户自定义完整性。

7、在关系模型中存在4类完整性:

_实体完整性、空值、参照完整性、和用户自定义完整性。

8、第一范式是最基本的范式。

如果关系模式中的所有属性值都是不可再分的_原子值,那么就称这中关系模式是第一范式的关系模式。

9、实体是现实世界中描述客观事物的概念,同一类实体的所有实例就构成该对象的_实体集, 

10、实体之间的这种关联关系可以分为3种:

一对一关系、一对多关系、和多对多关系。

11、在一个SQL Server2005数据库中可以使用3种类型的文件来存储信息,分别是:

_主数据库文件、辅助数据库文件、和事务日志文件。

_

12、表是关系模型中表示实体的方式,是用来_组织和存储数据、具有行列结构_的数据库对象,数据库中的数据或者信息都存储在表中。

13、通常情况下,表具有以下特点:

代表_实体、由行和列组成、列名在一个表中是唯一的__、行和列的顺序是不重要的等。

14、在SQLServer2005创建数据库的方法有两种:

一是通过__图形化向导、创建,二是通过编写Transact-SQL语句创建。

15、在SQLServer2005系统中,可以把表分为4种类型,即普通表、分区表、临时表和系统表。

16、主键约束使用数据表中的一列数据或者多列数据来唯一的标识一行数据。

17、索引是一个单独的、物理的数据库结构,它是某个表中一列或者若干列的集合和相应的指向表中物理标识这些的数据页的逻辑指针清单。

18、在SQLServer2005系统中,有两种基本类型的索引:

聚集索引、和非聚集索引_。

19、内连接是比较常见的一种数据连接查询方式,具体可分为_等值连接、非等值连接、和自然连接。

0、外连接返回所有匹配的行和一定的不匹配的行,这主要取决于建立的外连接的类型,其类型可分为_左外连接、右外连接、和完全连接。

21、在SQLServer2005系统中,按照触发事件的不同可以把提供的触发器分成两大类型,即_DML触发器和DDL触发器。

22、SQLServer2005的安全机制可以分为4个等级,即操作系统的安全性、SQL Server2005的安全性、数据库的安全性、和数据库对象的安全性。

23、SQLServer 2005的安全模式可以使用两种身份验证模式:

仅Windows身份验证、和混合身份验证。

24、SQLServer 2005提供了4种数据库备份类型:

_完整数据库备份、差异数据库备份、事务日志备份、和文件组备份。

25、SQLServer2005提供了3种恢复模型:

完全恢复模型、大容量日志记录恢复模型、和简单恢复模型。

26、备份存放在物理备份介质上,常见的备份设备有_磁盘备份设备、磁带备份设备和命令管道设备 。

1.在SQLServer中,创建一个名为SDB的数据库,使用的命令是( )

A.CREATETABLE   B.CREATESDB

C.CREATETABLESDB    D.CREATE DATABASESDB

1.在SQLServer中,创建一个名为CJ的数据表,使用的命令是( C )

 A.CREATETABLE   B. CREATE CJ

C.CREATE TABLECJ      D. CREATE DATABASECJ

2.以下()语句,不能在表或视图上激活触发器。

A.Insert B.Delete C.Update    D.Create

3.选择要执行操作的数据库,应该使用( )命令。

A.USE B.GO    C. DBD.EXEC

4.在SQL查询时,使用WHERE子句指出的是( )

A.查询目标   B.查询结果  C.查询条件 D.查询表格

5.SQL语句中删除表aa的命令是( )。

A.DELETETABLEaa    B.DROPTABLEaa

C.DELETEaa       D.DROPaa

6.在SELECT语句中表示所有列的关键字是( )。

A.ALL     B. DISTINCT  C.*  D.DESC   

7.关于主键约束,以下说法错误的是( )

A. 一个表中只能设置一个主键约束

B. 允许空值的字段上不能定义主键约束

C.允许空值的字段上可以定义主键约束

D.可以将包含多个字段的字段组合设置为主键

8.在使用SQL语句进行分组检索时,为了去掉不满足条件的分组,应当(   )

A. 使用WHERE子句

B.在GROUPBY后面使用HAVING子句

C.先使用WHERE子句,再使用HAVING子句

D. 先使用HAVING子句,再使用WHERE子句

9.若在员工数据表中,希望把工资字段的取值范围限定在1000到2000,则可在工资字段上建立( ),条件表达式为:

([工资]>=1000  AND[工资]<=2000)

A.核查约束   B.规则

C.唯一性约束       D.默认值

10.SQL对数据的操作功能包括( )

A. 更新、删除、查询       B.创建、更新、查询

C.更新、插入、查询      D.更新、删除、插入

11. 外键约束是用来建立两个表之间的关联的。

外键列的取值可以为空值,可以为重复值,但其值必须是引用列的列值之一。

引用列必须是创建了()或唯一约束的列。

A.规则 B.默认值  C.主键约束   D.核查约束

12.数据库中主数据文件是以( )为扩展名的。

A..dmf B..mdf   C..ldf   D. .ndf

13.标准的SQL基本查询模块的结构是( )。

A. SELECT…FROM…WHERE   B.SELECT…FROM…ORDERBY

C.SELECT…FROM…HAVING   D. SELECT…FROM…GROUPBY

14.下列(    )统计函数可以计算某一列的平均值。

A.AVG()  B.COUNT()  C.SUM() D.MAX()

15. 在关系数据库管理系统中,一个关系对应一个(  )。

A.字段 B. 记录 C.数据表   D. 二叉树

16、模式查找like'_a%',下面哪个结果是可能的(       )。

A、ailic                           B、baic

C、bbac                             D、acac

17、在WHILE循环语句中,如果循环体语句条数多于一条,必须使用:

(     )。

A、BEGIN……ENDB、CASE……END

C、IF……THEN   D、GOTO

18、下列途径哪个不输入实现值域完整性约束的(     )。

A 、rule  B、defaultC、notnull   D、trancation 

19、关于主键描述正确的是:

( )

A、包含一列  B、包含两列 C、包含一列或者多列 D、以上都不正确

20、关于视图和索引,下列说法那个是正确的 (      )。

A、视图是虚表,观察到的数据是实际基本表中的数据。

B、索引查找法是比表扫描法查询更快的一种方法。

C、视图是查询数据的一种方法,只能基于基本表建立。

D、索引的创建只和数据的存储有关系。

1~~5D,D,A,C,B 6~~10C,C,B,B,A 11~~15C,B,A,A,C 16~~20B,A,D,C,C

1.SQLServer 2005是典型的关系型数据库产品。

(true)

2.在一台计算机上可以同时运行多个版本的SQLServer。

(false) 

3. 在SQL Server中日志文件是维护数据库完整性的重要工具。

( false)

4.在定义数据表时,定义某列为标识列的关键字是Identity。

(true )

5.浮点数据类型的优点是能够存储范围非常大的数字,但容易发生误差。

(false) 

6.数据库完整性的目的是为了防止错误信息输入和输出。

( true) 

7.在Update语句中,一次可以更新多个表。

(true)

8. 尽量使用Select*,可以加快查询速度。

(false)

9.在SQLServer2005中表示注释可以用类似C语言的/*...*/和//。

 ( true)

10.在SQLServer中,RTRIM函数删除字符串右边的空白字符。

(true )

11.一个表只能有一个聚集索引(簇索引)。

(true)

(5)12. SQL查询语言中,如果没有指定排序方式,则默认是升序方式。

(true) 

13. 在SQLServer2000中ntext类型的字段不能进行排序操作。

(true)

14.在SQL Server2000中bit类型的字段不能建立索引。

(true) 

15. 在被定义为唯一索引的列上的数据不能有重复的值。

(true) 

(6)16.在被定义为唯一索引的列上的数据不允许空。

(false) 

17.在SQLServer中,每张表都应该建立一个索引,以提高查询速度。

(true )

18.视图在SQLServer中是一张虚拟表。

(true)

19.当一个视图由2个以上基本表构成时,不能进行删除视图中的数据。

 (false)

(7)20. 在SQLServer中,触发器是一种特殊的存储过程。

(true)

(8)21.由于存储过程是解释执行,所以每次执行时都要检查是否有语法错误。

(false)

22.可以在用户正在使用的数据库上执行数据库恢复操作。

(true)

(1)强制数据完整性可以确保数据库中的数据质量。

(√)ﻫ(9)

(2)规则可以在其他数据库中创建。

(√)

(3)规则能绑定到系统数据类型。

(×)

(4)规则不能绑定到数据类型为image、text或timestamp的列。

(√)

(5)一个数据表中只能有一个主键约束,但可以有多个UNIQUE约束(√)ﻫ(10)(6)主键约束中的字段不能接受空值,UNIQUE约束的字段也不能接受空值。

(×)ﻫ(7)标识属性和默认值都属于数据完整性的范畴。

(√)ﻫ(8)使用存储过程可以减少网络流量。

(√)ﻫ(9)存储过程使代码具有重用性。

(√)

(10)存储过程可以作为一个安全机制来使用。

(√)

(11)触发器不能被调用,它可以自动执行。

(√)

(12)利用DTS不能把oracle,access,sybase和informix中的数据转换到sql server2000中。

(×)

(1)1、请简述数据库快照的优点。

答:

数据库快照非常适用于存档用户仍然需要访问的 历史数据。

  数据快照可以在出现用户错误或丢失数据时用来恢复到数据库的一个早期的副本。

数据库快照在用来产生报表时可以提高性能,因为在一个用户从快照中读取数据期间,其他用户可以继续向原始数据库中写数据,不必等待第一个用户先完成数据读取。

(2)2、简述INSERT触发器的工作原理答:

当向表中插入数据时,INSERT触发器触发执行。

当INSERT触发器触发时,新的记录增加到触发器表中和inserted表中。

该inserted表是逻辑表,保存了所插入记录的拷贝,允许用户参考INSERT语句中的数据。

触发器可以检查inserted表,来确定该触发器的操作是否应该执行和如何执行。

在inserted表中的那些记录,总是触发表中一行或多行记录的冗余。

(3)3、为什么要创建索引。

答:

创建索引可以大大提高系统的性能。

第一,通过创建唯一性索引,可以保证每一行数据的唯一性。

第二,可以大大加快数据的检索速度,这也是所以的最主要原因。

第三,可以加速表与表之间的连接,特别是实现数据的参考完整性方面特有意义。

第四,在使用ORDERBY和GROUPBY子句进行数据检索时,同样可以显著减少查询中分组和排序的时间。

第五,通过使用索引,可以在查询过程中,使用查询优化器,提高系统性能。

(1)4、请简述索引的优点和缺点。

 答:

优点:

保证数据记录的唯一性。

加快数据检索速度。

加快表与表之间的连接速度。

在使用ORDERBY和GROUPBY子句进行检索数据时,可以显著地减少查询中分组和排序的时间。

可以在检索数据的过程中使用优化隐藏器,提高系统的性能。

缺点:

避免在一个表上创建大量的索引,这样不但影响插入、删除、更新数据的性能,也会在表中的数据更改时,增加要所有索引进行调整的操作,降低系统的维护速度。

(2)5、请简述SQLServer2005中游标具有哪些特点?

答:

游标返回一个完整的结果集,但允许程序设计语言只调用结果集中的一行。

允许定位在结果集的特定行。

从结果集的当前位置检索一行或多行。

支持对结果集中当前位置的行进行数据修改。

可以为其他用户对显示在结果集中的数据库数据所做的更改提供不同级别的可见性支持。

提供脚本、存储过程和触发器中使用的访问结果集中数据的T-SQL语句。

(3)6、触发器与存储过程的区别。

 答:

触发器与存储过程的主要区别在于触发器的运行方式。

存储过程必须由用户、应用程序或者触发器来显示式调用并执行,而触发器是当特定事件出现的时候,自动执行或者被激活的,与连接到数据库中的用户或者应用程序无关。

7、主键约束与UNIQUE约束有哪些区别?

 答:

主键值是具有唯一性的,因此主键列不能再实施唯一性约束。

与主键约束不同的是一个表可以定义多个唯一性约束,但是只能定义一个主键约束;另外唯一性约束指定的列可以设置为NULL,但是不允许有一行以上的值同时为空,而主键约束不能用于允许空值的列。

(4)8、什么叫实体完整性?

什么叫域完整性?

什么叫引用完整性?

答:

实体完整性指表中行的完整性。

要求表中的所有行都有唯一的标识符,称为主关键字。

主关键字是否可以修改,或整个列是否可以被删除,取决于主关键字与其他表之间要求的完整性。

域完整性指列的值域的完整性。

域完整性限制了某些属性中出现的值,把属性限制在一个有限的集合中。

引用完整性指被引用表中的主关键字和引用表中的外部主关键字之间的关系。

如被引用行是否可以被删除等。

9、备份的四种方式是什么?

答:

完全数据库备份就是备份数据库中的所有数据和结构。

增量备份是备份自从上一次完全数据库备份之后改变的数据。

可以降低数据库恢复所需要的时间。

事务日志备份:

备份数据库事务日志的变化过程。

当执行完全数据库备份之后,可以执行事务日志备份。

对于海量数据库,应该执行数据库文件或文件组备份。

不备份整个数据库。

(4)10、主键约束与唯一键约束的异同. 答:

相同:

它们都属于实体完整性约束。

不同点:

(1)唯一性约束所在的列允许空值,但是主键约束所在的列不允许空值。

(2)可以把唯一性约束放在一个或者多个列上,这些列或列的组合必须有唯一的。

但是,唯一性约束所在的列并不是表的主键列。

(3)唯一性约束强制在指定的列上创建一个唯一性索引。

在默认情况下,创建唯一性的非聚簇索引,但是,也可以指定所创建的索引是聚簇索引。

(4) 建立主键的目的是让外键来引用。

(5) 一个表最多只有一个主键,但可以有很多唯一键。

1、更新表中的数据,编写一条UPDATE语句,将所有库存量大于5000的货品单价下调10%

答:

update名表set库存 =库存-库存*0.1 where库存>5000

2、对于教学数据库的三个基本表

学生S(S#,SNAME,AGE,SEX)

学习SC(S#,C#,GRADE)

课程C(C#,CNAME,TEACHER)

其中,S是学生关系,其属性分别为学号、姓名、年龄、性别;SC是学习关系,其属性分别为学号、课程号、成绩;C是课程关系,其属性分别为课程号、课程名、教师名。

1.查询李文老师所授课程的课程号和课程名。

2.查询至少选修李文老师所授课程中一门课程的女学生姓名。

3.查询语句SELECT C#FROMS,SC,C WHERE  S.S#=SC.S#ANDSC.C#=C.C#ANDSNAME=’王林’,写出其关系代数表达式。

4.用SQL语句将学生的高等数学的成绩上调5分。

1:

SELECTC#,CNAMEFROM C WHERE TEACHER='李文'

2:

SELECT S.SNAME FROM S,SC,C

WHERE  S.S#=SC.S# ANDSC.C#=C.C# ANDC.TEACHER='李文'  ANDSEX=’女’

3:

“投影那个符号“C#("选择那个符号"SNAME=’王林’((SXSC S.S#=SC.S#)XCC.C#=SC.C#))

4:

UPDATESC SETGRADE=GRADE+5WHEREC#IN(SELECTC#FROM CWHERECNAME='高等数学')

1:

SELECTC#,CNAME FROMCWHERE  TEACHER='张明'

2:

SELECT  S.SNAMEFROMS,SC,C

WHERE S.S#=SC.S#ANDSC.C#=C.C#ANDC.TEACHER='张明'

3:

“投影那个符号“C#("选择那个符号"SNAME=’刘伟’((SXSCS.S#=SC.S#)XCC.C#=SC.C#))

4:

UPDATESCSETGRADE=GRADE+7WHEREC#IN(SELECT C#FROMC WHERE CNAME='计算机基础')

对于教学数据库的四个基本表

班级class(classno,departno,classname)

课程course(couno,couname,kind,credit,departno,schooltime,limitinum,willnum,choosenum)

系别department(departno,departname)

学生student(stuno,classno,stuname,pwd)

请写出相应的SQL语句。

1、从student表中检索学号为00000001的同学姓名(stuname),要求显示学号和姓名。

selectstuno,stuname fromstudent wherestuno='00000001'

2、检索课程表中最小报名人数,最大报名人数和平均报名人数。

selectmin(willnum),max (willnum),avg(willnum)from course

3、减缩课程号不为00,007和013的课程号和课程名称。

Selectcouno,counamefromcourse wherecounonot in('00','007','013')

4、检索不姓“刘”的学生信息。

select *from  studentwherestunamenotlike'刘%'

5、按课程分类统计平均报名人数。

select  * fromcourse orderbykindcomoute avg(willnum)bykind

1.删除表中数据的语句是(d )。

A.DROP               B.ALTER      C. UPDATE               D.DELETE

2.限制输入到列的值的范围,应使用(  d )约束。

A.CHECK    B.PRIMARYKEY C. FOREIGNKEY     D.UNIQUE

3. 触发器可引用视图或临时表,并产生两个特殊的表是( a  )。

A.Deleted、Inserted      B.Delete、Insert C.View、Table     D.View1、table1

4.关于视图下列哪一个说法是错误的(  b)。

A.视图是一种虚拟表B. 视图中也存有数据  C.视图也可由视图派生出来D. 视图是保存在数据库中的SELECT查询

5.创建表的命令是( c )。

A.Createdatabase表名 B.CreateVIEW表名 C. Create TABLE  表名   D.ALTERTABLE表名

6.用于模糊查询的匹配符是( d)。

A._                B. []         C.^                   D. LIKE

7.在sqlSERVER中不是系统数据库的是(  d )。

A. master            B.model  C. tempdb                   D.pubs

8.关于关系图下列哪一个是正确的( b )。

A.关系图是在同一个表中不同字段之间建立关联B. 关系图是在不同表中的字段之间建立关联  C.关系图是表与表之间建立关联,与字段无关。

   D.关系图是在不同数据库之间建立关联

9.触发器可以创建在(  a )中。

A.表   B. 过程  C. 数据库       D. 函数

10.删除表的语句是(a   )。

A.DROP    B.ALTER  C.UPDATE     D.DELETE

11.以下触发器是当对[表1]进行(  d)操作时触发。

   Create Trigger  abc  on 表1

   For insert,update, delete

   As ……

A.只是修改     B.只是插入    C.只是删除    D.修改、插入、删除

12. 规则对象在使用上与(a   )约束类似。

A.CHECK     B.PRIMARYKEY   C.FOREIGN KEY   D.UNIQU

13.关于视图下列哪一个说法是错误的(b )。

A.视图是一种虚拟表 B.视图中也保存有数据 C.视图也可由

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1