收藏 分享(赏)

SQL题库(有答案).doc

上传人:weiwoduzun 文档编号:5609972 上传时间:2019-03-09 格式:DOC 页数:9 大小:35.27KB
下载 相关 举报
SQL题库(有答案).doc_第1页
第1页 / 共9页
SQL题库(有答案).doc_第2页
第2页 / 共9页
SQL题库(有答案).doc_第3页
第3页 / 共9页
SQL题库(有答案).doc_第4页
第4页 / 共9页
SQL题库(有答案).doc_第5页
第5页 / 共9页
点击查看更多>>
资源描述

1、一、选择题:1、根据关系数据基于的数据模型关系模型的特征判断下列正确的一项:(_B_)A、只存在一对多的实体关系,以图形方式来表示。B、以二维表格结构来保存数据,在关系表中不允许有重复行存在。C、能体现一对多、多对多的关系,但不能体现一对一的关系。D、关系模型数据库是数据库发展的最初阶段。2、在“连接”组中有两种连接认证方式,其中在(_B_)方式下,需要客户端应用程序连接时提供登录时需要的用户标识和密码。A、Windows 身份验证 B、SQL Server 身份验证C、以超级用户身份登录时 D、其他方式登录时3、SQL Server 2000 在安装之前,应注意的事项:(_C _)A、SQL

2、 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_A _) ,主键的建立有(2_C_)种方法,当运用Transact-SQL 语句创建主键时,可以是(3_B_) 。 A、为标识表中唯一的实体B、创建唯一的索引,允许空值C、只允许以表中第一

3、字段建立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_C_)各种数据内

4、容的,数据库创建后就可以创建表了,创建表可以用(2_D_)等方法来创建。 A、显示 B、查询 C、存放 D、检索 A、企业管理器 B、查询分析器C、OSQL D、企业管理器和 CREATE TABLE 语句6、为数据表创建索引的目的是(1_A _) ,可以在创建表时用(2_C_)来创建唯一索引,也可以用(2_)来创建唯一索引。 A、提高查询的检索性能 B、创建唯一索引C、创建主键 D、归类 A、设置主键约束,设置唯一约束B、Create table,Create indexC、设置主键约束,Create indexD、以上都可以7、 在 Transact-SQL 语法中,用来插入数据的命令是(

5、_A_) ,用于更新的命令是(_) 。A、INSERT,UPDATE B、UPDATE,INSERTC、DELETE,UPDATE D、CREATE,INSERT INTO8、在 Transact-SQL 语法中,SELECT 语句的完整语法较复杂,但至少包括的部分(1_B_) ,使用关键字(2_ A_)可以把重复行屏蔽,将多个查询结果返回一个结果集合的运算符是(3_B _) ,如果在 SELECT 语句中使用集合函数时,一定在后面使用(4_A_) 。 A、SELECT,INTO B、SELECT,FROMC、SELECT,GROUP D、仅 SELECT A、DISTINCT B、UNION

6、C、ALL C、TOP A、JOIN B、UNIONC、INTO C、LIKE A、GROUP BY B、COMPUTE BYC、HAVING D、COMPUTE9、视图是一种常用的数据对象,它是提供(1_A _)和(1_)数据的另一种途径,可以简化数据库操作,当使用多个数据表来建立视图时,表的连接不能使用(2_A_)方式,并且不允许在该语句中包括( 3_B_)等关键字。 A、查看,存放 B、查看,检索C、插入,更新 D、检索,插入 A、外连接 B、内连接C、左连接 D、右连接 A、ORDER BY,COMPUTEB、ORDER BY ,COMPUTE,COMPUTR BYC、ORDER BY

7、 ,COMPUTE BY,GROUP BYD、GROUP BY,COMPUTE BY10、在 SQL SERVER 服务器上,存储过程是一组预先定义并(1_B_)的 Transact-SQL 语句。可以用(2_D_)来声明游标。 A、保存 B、编译 C、解释 D、编写 A、CREATE CURSOR B、ALTER CURSORC、SET CURSOR D、DECLARE CURSOR二、 填空题:1、 更改 Microsoft SQL Server 登录的密码的命令是_,举例说明其语法格式:_。2、 Windows NT 授权认证模式只适用于_平台,对于Windows95/98 操作系统下的

8、 SQL Server 系统将不适用。3、 SQL Server 中索引类型包括的三种类型分别是_,_和_。4、 在 SELECT 语句的 FROM 子句中最多可以指定_个表或视图,相互之间要用_分隔,当所查询的表不在当前数据库时,可用_格式来指出表或视图对象。5、 服务器网络实用工具的目的_。6、 在当 SQL SERVER 实例中有 DBOA 数据库,要将它设置成为单用户状态,请写出设置命令:_。7、 删除表命令是:_。8、 用 SELECT 进行模糊查询时,可以使用_或_匹配符,但要在条件值中使用_或_等通配符来配合查询。并且,模糊查询只能针对字段类型是_的查询。9、 计算字段的累加和的

9、函数是:_,统计项目数的函数是:_。10、 SQL SERVER 中的编程语言就是_语言。1、 Sp_password,sp_password “12345”,”54321”,”abc”2、 Windows NT3、 唯一索引,簇索引,非簇索引4、 256,逗号, ”数据库.所有者名称.对象名称”5、 为客户端网络实用工具提供参数。6、 sp_dboption DBOA,single use,true7、 drop table8、 like,not like,”%”,”_”,字符9、 Sum(),Count()10、TranSact_SQL三、 判断题1、在 CREATE INDEX 语句中,

10、使用 CLUSTERED 来建立簇索引。 ( )2、可以在企业管理器中修改数据库的名称。 ( )3、恢复数据,可以在查询分析器中使用这样的命令:BACKUP DATABASE database_name FROM backup ( )4、在查询分析器中修改帐户时可以用系统存储过程 Sp_modibaccess。 ( )5、每个存储过程向调用方返回一个整数返回代码。如果存储过程没有显式设置返回代码的值,则返回代码为 0,表示成功。6、在 Transact-SQL 语句中,对不符合所有标识符规则的标识符必须进行分隔。7、在 SQL SERVER 中,触发器的执行是在数据的插入、更新或删除之前执行的

11、。8、在 Transact-SQL 语句的 WHERE 子句中,完全可以用 IN 子查询来代替 OR 逻辑表达式。9、通配符“_”表示某单个字符。10、因为通过视图可以插入、修改或删除数据,因此视图也是一个实在表,SQL SERVER 将它保存在 syscommens 系统表中。1、 2、 3、 4、 5、 6、 7、 8、 9、 10、四、 简答题:1、 写出关系型数据库的第一、第二、第三标准形式的各自要求。第一标准形式:由原子值和主键值组成,数据表中的每一个字段都不可以再分。 (同一数据表中同类字段不允许重复出现,在一个字段内也不允许放置多个数据项)第二标准形式:要求所有的非关键字段完全依

12、赖于主键。 (或类似的解释)第三标准形式:每一个非主键字段列中没有可传递的的依赖性。 (一个非主键列不能依赖于另一个非主键列)2、 触发器的类型以及相对的语句命令?类型:INSERT 触发器、UPDATE 触发器、DELETE 触发器相对应的语句:INSERT 语句、UPDATE 语句、DELETE 语句3、 自定义函数的类型?各自原返回值。自定义函数类型:标量函数 返回值:单个数据值内嵌表值函数 返回值:table,多语句表值函数 返回值:table4、 用户权限的种类有哪些?各自的作用?对象权限 作用:决定用户对数据库对象所执行的操作,包括用户对数据库中的表、视图、列或存储过程等对象的操作

13、权限语句权限 作用:决定用户能否操作数据库和创建数据库对象隐含权限 作用:控制那些只能由预定义系统角色的成员或数据库对象所有者执行的活动。5、写出一条 Sql 语句: 取出表 A 中第 31 到第 40 记录(SQLServer, 以自动增长的 ID 作为主键 , 注意:ID 可能不是连续的。 ) select * from A where id between 31 and 40五、 编程填空题:1、填写出下列触发器中缺少的关键字,使下面语句完整:if update(lcostprice)update b_drug_data set scostprice = (select lcostpri

14、ce from inserted _ GROUP BY _ codno,lcostprice,scostprice_ HAVING _ b_drug_data.codno = inserted.codno)/(select fsco from b_drug_data _ GROUP BY _ codno,fsco _ HAVING _ b_drug_data.codno = (select codno from inserted group by codno)where b_drug_data.codno _IN_ (select codno from inserted)2、设有一个关系 St

15、udent(学号,姓名,系名,课程号,成绩),查询至少选修了四门课程的学生学号、姓名及平均成绩的 SELECT 语句应该是:SELECT 学号,姓名,AVG(成绩) AS 平均成绩FROM StudentGROUP BY_(1)A_HAVING_(2)B_(1)A学号 B 姓名 C系名 D课程号(2)ACOUNT(DISTINCT 学号)3 BCOUNT(课程号)3CCOUNT(DISTINCT 学号)=3 D COUNT(课程号)=3六、 分析编码题1、 请使用 Transact-SQL 建立如下表:表名:雇员基本信息表;字段名 数据类型 宽度 精度 可空性 要求NO_ID CHAR 7 N

16、OT NULL 设为主键NAME CHAR 10 NOT NULLSEX CHAR 2 NOT NULL 默认值为”男”AGE INT NOT NULLDEPT VARCHAR 50 NULLPHONE VARCHAR 20 NULLNOTES VARCHAR 50 NULLCREATE TABLE 雇员基本信息表(NO_ID char(7) not null primary key,NAME char(10) not null,SEX char( 2) not null default 男,AGE int not null,DEPT varchar(50) null,PHONE varcha

17、r(20) null,NOTES 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 的所有记录。SELECT * FROM 销售表 WHERE

18、 (selldate = 2002-2-15 AND selldate = A.ACHIEVEMENT) = 2ORDER BY A.COURSEID, A.ACHIEVEMENT DESC7、表结构如下:item(itemno(varchar(20),in_price(float),out_price(float)-itemno:产品编号,in_price:采购价,out_price:销售价.INOut_list(itemno (varchar(20),flag(char(1),qty(int)-itemno:产品编号,flag:标志,其中 flag=1表示入仓,flag=2 表示出仓.qt

19、y:入仓或出仓数量.(1) 用一条 SQL 列出 仓存;Select itemno,sum(qty)-(select sum(qty) from inout_list a where a.itemno=b.itemno and flag=0 group by itemno) from inout_list b where flag=1 group by itemno(2) 用一条 SQL 列出 每个产品的库存金额;select itemno,sum(qty)*(select in_price from item where itemno=b.itemno) -(select sum(qty)

20、from inout_list a where a.itemno=b.itemno and flag=0 group by itemno)* (select out_price from item where itemno=b.itemno) ) from inout_list b where flag=1 group by itemno(3)用一条 SQL 列出 所有产品的库存金额.select itemno,sum(库存) as 总库存 from ( select =itemno,库存=sum(qty)*(select in_price from item where itemno=b.i

21、temno) -(select sum(qty) from inout_list a where a.itemno=b.itemno and flag=0 group by itemno)* (select out_price from item where itemno=b.itemno) ) from inout_list b where flag=1 group by itemno ) a group by itemno8、按照 id 顺序,给每个人发放奖金,求奖金数累加小于 1000 时的 id 号如下表数据id bonus1 892 973 834 945 836 977 998 819 8410 9211 9812 9113 8214 8315 9516 9817 81到 id11 的时候,奖金累计是 997,而到 id12 的时候奖金累计就是 1088所以 id11 就是答案求用一条 sql 语句得出这个答案。Select Top 1 A.id from TEST A Where (Select SUM(bonus) from TEST Where id =A.id) 1000 Order By id Desc

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

当前位置:首页 > 企业管理 > 经营企划

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报