SQLServer数据库试题及答案.docx
SQLServer数据库试题及答案 选择题:(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 index D、以上都可以 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,FROM C、SELECT,GROUP D、仅SELECT A、DISTINCT B、UNION C、ALL C、TOP A、JOIN B、UNION C、INTO C、LIKE A、GROUP BY B、COMPUTE BY C、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、 举例说明其语法格式:_。 3、 Windows NT 授权认证模式只适用于_平台,4、 对于Windows95/98操作系统下的SQL Server系统将不5、 适用。 6、 SQL Server中索引类型包括的三种类型分别是_,_和_。 7、 在SELECT语句的FROM子句中最多可以指8、 定_个表或视图,9、 相互之间要用_分隔,10、 当所查询的表不11、 在当前数据库时,12、 可用_格式来指13、 出表或视图对象。 14、 服15、 务器网络实用工具的目的_。 16、 在当SQL SERVER实例中有DBOA数据库,17、 要将它设置成为单用户状态,18、 请写出设置命令:_。 19、 删除表命令是:_。 20、 用SELECT进行模糊查询时,21、 可以使用_或_匹配符,22、 但要在条件值中使用_或_等通配符来配合查询。并且,23、 模糊查询只能针对字段类型是_的查询。 24、 计算字段的累加和的函数是:_,25、 统计项目数的函数是:_。 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分) 26、 写出关系型数据库的第一、第二、第三标27、 准形式的各自要求。 28、 触发器的类型以及相对的语句命令? 29、 自定义函数的类型?各自原返回值。 30、 用户权限的种类有哪些?各自的作用? 分析编码题(20分) 31、 请使用Transact-SQL 建立如下表: 表名:雇员基本信息表; 字段名 数据类型 宽度 精度 可空性 要求 NO_ID CHAR 7 NOT NULL 设为主键 NAME CHAR 10 NOT NULL SEX CHAR 2 NOT NULL 默认值为”男” AGE INT NOT NULL DEPT VARCHAR 50 NULL PHONE VARCHAR 20 NULL NOTES VARCHAR 50 NULL 32、 现有1销售表,33、 它们结构如下: 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的所有记录。 34、 在table1数据表中增加“No_id”字段,35、 数据类型char(12),36、 不37、 可空,38、 并将其设定为UNIQUE约束,39、 写出其命令语句。 编程填空题:(10分) 填写出下列触发器中缺少的关键字,使下面语句完整: if update(lcostprice) update b_drug_data set scostprice = (select lcostprice from inserted _ codno,lcostprice,scostprice _ b_drug_data.codno = inserted.codno)/ (select fsco from b_drug_data _ codno,fsco _ b_drug_data.codno = (select codno from inserted group by codno) where b_drug_data.codno _ (select codno from inserted) *=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=休息的分割线*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=* 网络数据库SQL模拟试题参考答案 选择题:(20分) 注:每个选空1分 1、B,2、B,3、C,4、 A,C,B,5、C,D,6、A,C 7、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、 准形式:由原子值和主键值组成,3、 数据表中的每一个字段都不4、 可以再分。(同5、 一数据表中同6、 类字段不7、 允许重复8、 出现,9、 在一个字段内也不10、 允许放置多个数据项) 第二标准形式:要求所有的非关键字段完全依赖于主键。(或类似的解释) 第三标准形式:每一个非主键字段列中没有可传递的的依赖性。(一个非主键列不能依赖于另一个非主键列) 2、 类型:INSERT触发器、UPDATE触发器、DELETE触发器 相对应的语句:INSERT语句、UPDATE语句、DELETE语句 11、 自定义函数类型:标12、 量函数 返回值:单个数据值 内嵌表值函数 返回值:table, 多语句表值函数 返回值:table 4、 权限类型及作用: 对象权限 作用:决定用户对数据库对象所执行的操作,包括用户对数据库中的表、视图、列或存储过程等对象的操作权限 语句权限 作用:决定用户能否操作数据库和创建数据库对象 隐含权限 作用:控制那些只能由预定义系统角色的成员或数据库对象所有者执行的活动。 五、(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) null0.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