SQLServer题库_第1页
SQLServer题库_第2页
SQLServer题库_第3页
SQLServer题库_第4页
SQLServer题库_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

1、SQL Server题库一 选择题2、下列哪个标识符不是SQL SERVER 2005的常规标识符(A )。A、3b B、#xuesheng C、#xuesheng D、_2abc3、下列哪个函数不属于聚合函数( D )。A、count() B、avg() C、min() D、str()4、下列各运算符中(A )不属于逻辑运算符。A、& B、not C、and D、or5、下列哪条语句能够从学生表中查询出姓名的第二个字是“敏”的学生的信息( B )。A、select * from 学生表 where 姓名=_敏% B、select * from 学生表 where 姓名 like _敏

2、% C、select * from 学生表 where 姓名 like %敏% D、select * from 学生表 where 姓名 like %敏 6、聚合函数不可以用在下列哪个语句中( D )。A、SELECT子句 B、HAVING 子句 C、WHERE 子句 D、子查询 7、下列哪些选项在T-SQL语言中使用时不用括在单引号中( D )。A、单个字符 B、字符串 C、通配符 D、数字9、下列哪个命令必须在单个批命令中执行。( D )A、CREATE DATABASE B、CREATE TABLE C、CREATE INDEX D、CREATE VIEW10、下列有关关键字的说法中,不

3、正确的是( B )。A、主关键字能惟一标识表中的每一行 B、每个表中一定存在外关键字C、侯选关键字中的任一个都可以充当主关键字 D、关键字的值不能重复,也不能为NULL11、根据关系数据基于的数据模型关系模型的特征判断下列正确的一项:(_B_)A、只存在一对多的实体关系,以图形方式来表示。B、以二维表格结构来保存数据,在关系表中不允许有重复行存在。C、能体现一对多、多对多的关系,但不能体现一对一的关系。D、关系模型数据库是数据库发展的最初阶段。12、在“连接”组中有两种连接认证方式,其中在(_B_)方式下,需要客户端应用程序连接时提供登录时需要的用户标识和密码。A、Windows身份验证 B、

4、SQL Server 身份验证C、以超级用户身份登录时 D、其他方式登录时13、视图是一种常用的数据对象,可以简化数据库操作,当使用多个数据表来建立视图时,不允许在该语句中包括(_B_)等关键字。A、ORDER BY,COMPUTEB、ORDER BY,COMPUTE,COMPUTR BYC、ORDER BY,COMPUTE BY,GROUP BYD、GROUP BY,COMPUTE BY15、 利用查询分析器,能(A )。A、直接执行SQL语句 B、提交SQL语句给服务器执行C、作为企业管理器使用 D、作为服务管理器使用16、 事务日志文件的默认扩展名是( C)。A、MDF B、NDF C、

5、LDF D、DBF17、 通过使用文件组,可以( A )。A、提高存取数据的效率。 B、提高数据库备份与恢复的效率C、简化数据库的维护 D、ABC都可以。18、 SQL Server的主数据库是( A)。A、MASTER B、TEMPDB C、MODEL D、MSDB19、 数据库的容量,( D)。A、只能指定固定的大小。 B、最小为10MC、最大100M。 D、可以设置为自动增长20、 日期时间型数据类型(datetime)的长度是(C )。A、2 B、4 C、8 D、1621、表在数据库中是一个非常重要的数据对象,它是用来(C_)各种数据内容的。A、显示 B、查询 C、存放 D、检索22、

6、为数据表创建索引的目的是(A_),可以在创建表时用( A_)来创建唯一索引。 A、提高查询的检索性能 B、创建唯一索引 C、创建主键 D、归类 A、设置主键约束,设置唯一约束 B、Create table,Create indexC、设置主键约束,Create index D、以上都可以23、 在T-SQL语法中,用来插入和更新数据的命令是(_A_)。 A、INSERT,UPDATE B、UPDATE,INSERT C、DELETE,UPDATE D、CREATE,INSERT INTO24、 主键约束用来强制数据的(B )完整性。A、域 B、实体 C、参照 D、ABC都可以25、 在SQL

7、Server服务器上,存储过程是一组预先定义并(B_)的T-SQL语句。A、保存 B、编译 C、解释 D、编写26、 替代触发器(instead of)是在触发触发器的修改操作( D )执行。A、执行后 B、停止执行时 C、同时 D、之前27、 聚合函数的返回值是(A )。A、一个标量值 B、一组值 C、表达式 D、表28、一个仓库可以存放多种产品,一种产品只能存放于一个仓库中。仓库与产品之间的联系类型是 A、一对一的联系 B、多对一的联系 C、一对多的联系 D、多对多的联系 答案:(C )31、以下那中情况不是连接陷阱产生原因(A) A、把多对多的联系转换为一对一的联系 B、把多对多的联系转

8、换为一对多的联系 C、把原本的联系现在用实体表示 D、把原本的联系通过实体联系到一起 32、不属于传统数据模型的是(D) A、层次数据模型 B、网状数据模型 C、关系数据模型 D、面向对象数据模型 34、在SQL Server中,不是对象的是(B) A、用户 B、数据 C、表 D、数据类型35、以下论述不正确的是(D) A、distribution数据库是系统数据库 B、企业管理器与查询分析器都是客户端工具 C、SQL Server 2005可以安装到windows、windows XP、windows NT系统上。 D、SQL Server 支持的SQL命令集称为T_SQL,它是完全符合AN

9、SII SQL92标准的。 36、以下正确的论述是(C) A、在建立数据库的时候,SQL Server 是可以创建操作系统文件及其目录路径。 B、数据库中有一些sys开头的系统表,用来纪录SQL Server组件、对象所需要的数据, 这些系统表全部存放在系统数据库中。 C、SYS开头的系统表中的数据用户不能直接修改,但可以通过系统存储过程、系统函数 进行改动、添加。 D、12AM是中午,12PM是午夜。 37、声明了变量:declare i int,c char(4),现在为i赋值10,为c赋值'abcd', 正确的语句是(C) A、set i=10,c='abcd&#

10、39; B、set i=10 , set c='abcd' C、select i=10,c='abcd' D、select i=10, select c='abcd' 38、有如下代码,当代码中_关键字_分别为break continue return时,最后的print n输 出的值为(A) declare n int set n=3 while n>0 begin set n=n-1 if n=1 _关键字_ end print n A、1,0,不输出 B、1,1,1 C、0,0,0 D、0,1,2 40、关于SQL Server 安装

11、命名实例时,不正确的描述是(B) A、最多只能用16个字符 B、实例的名称是区分大小写 C、第一个字符只能使用文字、_和#符号。 D、实例的名称不能使用Default或MSSQLServer这两个名字。 42、(C)是长期存储在计算机内的有组织,可共享的数据集合. A、数据库管理系统 B、数据库系统C、数据库 D、文件组织 43.数据库系统不仅包括数据库本身,还要包括相应的硬件,软件和(D).A、数据库管理系统 B、数据库应用系统C、相关的计算机系统 D、各类相关人员 44.在文件系统阶段,数据(B)A、无独立性 B、独立性差C、具有物理独立性 D、具有逻辑独立性 45.数据库系统阶段,数据(

12、D)A、具有物理独立性,没有逻辑独立性 B、具有物理独立性和逻辑独立性C、独立性差 D、具有高度的物理独立性和一定程度的逻辑独立性 46(B)属于信息世界的模型,是现实世界到机器世界的一个中间层次. A、数据模型 B、概念模型C、E-R图 C、关系模型 47.数据库系统软件包括DBMS和(D)A、数据库 B、高级语言 C、OS D、数据库应用系统和开发工具 48.在SQL语言中授权的操作是通过(C)语句实现的。A、CREATE B、REVOKEC、GRANT D、INSERT 49.数据库中只存放视图的(C)A、操作 B、对应的数据 C、定义 D、限制 50概念结构设计阶段得到的结果是(B)A

13、、数据字典描述的数据需求 B、E-R图表示的概念模型C、某个DBMS所支持的数据模型 D、包括存储结构和存取方法的物理结构 52、现有关系:学生(学号,姓名,课程号,系号,系名,成绩),为消除数据冗余, 至少需要分解为(C ) A 1个表 B 2个表 C 3个表 D 4个表 53、已知职工和职工亲属两个关系,当职工调出时,应该从职工关系中删除该职工的元组,同时在职工亲属关系中删除对应的亲属元组,在SQL语言中,定义这个完整性约束的短语是(D ) A ON DELETE ALL B ON DELETE RESTRICT C ON DELETE SET NULL D ON DELETE CASCA

14、DE 54、DBMS中的检查点机制用于(B ) A 检查事务的故障 B 减少故障恢复的时间 C 检查数据库一致性状态 D 检查数据库的完整性 55.有两个关系R和S,分别包含15个和10个元组,则在RS,R-S,RS中不可能出现的元组 数目情况是(B ) A 15,5,10 B 18,7,7 C 21,11,4 D 25,15,0 56.授予用户Jean可以查询帐户表的权限,使用的SQL语句是( A ) A GRANT SELECT ON 帐户 TO Jean B GRANT SELECT TO Jean ON 帐户 C GRANT SELECT TO帐户 ON Jean D GRANT SE

15、LECT ON Jean TO 帐户 58.如下不能正确执行的语句是(D) A、select * from table_name where 1>2 B、truncate table table_name C、delete from table_name where null=null D、alter table table_name add column idd int62 .你是一个保险公司的数据库开发人员,这家保险公司有一个用于保单或保单所有者的多层的应用。保单所有者信息存储在一个名为Owners的表中,下面的语句用于建立这个表,当保单所有者的信息输入时,若不包括所有者的出生年月,

16、数据库要产生一个错误信息。你要设计一个方法来校验出生日期数据是否填写,没有的情况下要显示错误信息。你将怎么做?A、在BirthDate 字段上加上CHECK约束。B、建立一个规则,并将这个规则绑定在BirthDate字段上。C、改变Owners表使BirthDate字段不能为空。D、在Owners表上建立一个触发器校验BirthDate字段。答案 D65.你是一个集装箱制造公司的数据库开发人员,公司制造的集装箱有不同的尺寸和形状,存储的集装箱信息的表有Size、Container、Shape。一般来说,集装箱的尺寸周期性的改变,数据库的用户需要知道集装箱的容量,容量是基于Shape、size表

17、中的数据计算得到的。你要隐藏计算的细节,使用一个SELECT查询可以方便的得到,你将怎么做?A、建立一个用户定义的函数,使用ContainerID作为参数,返回集装箱的容量。B、建立一个程序,使用ContainerID作为参数,返回集装箱的容量。C、在Container表中加入名为volume的一列,当一个新集装箱加入表中时,建立一个触发器计算和存储这列的值。D、在Container表中加入一个计算过的列计算集装箱的容量。答案: A、68 .你是一个保险公司的数据库开发人员,公司的保单信息存储在SQL Server 2005数据库中,你使用以下脚本建立了一个名为Policy的表:CREATE

18、TABLE Policy(PolicyNumber int NOT NULL DEFAULT (0),InsuredLastName char (30) NOT NULL,InsuredFirstName char (20) NOT NULL,InsuredBirthDate datetime NOT NULL,PolicyDate datetime NOT NULL,FaceAmount money NOT NULL,CONSTRAINT PK_Policy PRIMARY KEY (PolicyNumber)每次公司销售出一份保单,Policy表中就增加一条记录,并赋予其一个新的保单号,你

19、将怎么做?A、建立一个INSTEAD OF INSERT触发器来产生一个新的保单号,并将这个保单号插入数据表中。B、建立一个INSTEAD OF UPDATE触发器来产生一个新的保单号,并将这个保单号插入数据表中。C、建立一个AFTER UPDATE触发器来产生一个新的保单号,并将这个保单号插入数据表中。D、用AFTER UPDATE触发器替代DEFAULT约束条件产生一个新的保单号,并将这个保单号插入数据表中。答案: A、81.你是一名数据库咨询顾问, 目前你被一家本地狗饲养场雇用来开发数据库.这个数据库将被使用来存储关于饲养者的狗的信息.你使用下面的脚本创建了一个名为Dogs的表: CRE

20、ATE TABLEdbo.Dogs(DogID int NOT NULL,BreedID int NOT NULL,DateofBirth datetime NOT NULL,WeightAtBirth decimal (5, 2) NOT NULL,NumberOfSiblings int NULL,MotherID int NOT NULL,FatherID int NOT NULL) ON PRIMARYGOALTER TABLE dbo.Dogs WITH NOCHECK ADDCONSTRAINT PK_DogsPRIMARY KEY CLUSTERED(DogID) ON PRIM

21、ARYGO你必须确保每条狗的MotherID和FatherID列都有有效的值.你想在保证最小化磁盘I/O的条件下执行这个规则.你该做什么 (C)A、 在Dogs表上创建一个AFTER INSERT触发器, 使其回滚MotherID或FatherID列事务无效B、 在MotherID和FatherID列上创建一个表级CHECK约束C、 创建两个FOREIGN KEY约束: 一个在MotherID列, 一个在FatherID列; 指定每个约束引用DogID列D、 创建一个规则并把它和MotherID列绑定, 把同样规则和FatherID列绑定84.你是某销售组织的数据库开发人员, 你的数据库有一个

22、名为Sales表, 此表包括了来自销售人员的销售订单概要信息.销售经理要求你创建一个销售额排在前20位的销售人员报表, 你该使用哪个查询来完成这个任务(D)A、 SELECT TOP 20 PERCENT LastName, FirstName, SUM (OrderAmount) AS ytdFROM salesGROUP BY LastName, FirstNameORDER BY 3 DESCB、 SELECT LastName, FirstName, COUNT(*) AS salesFROM salesGROUP BY LastName, FirstNameHAVING COUNT

23、(*) > 20ORDER BY 3 DESCC、 SELECT TOP 20 LastName, FirstName, MAX(OrderAmount) AS ytdFROM salesGROUP BY LastName, FirstNameORDER BY 3 DESCD、 SELECT TOP 20 LastName, FirstName, SUM (OrderAmount) AS ytdFROM salesGROUP BY LastName, FirstNameORDER BY 3 DESC87. 触发器可以创建在A中。A 表B视图C数据库D查询88. Create Proced

24、ure 是用来创建B。A 程序B 过程C 触发器D 函数89.以下触发器是当对表进行D操作时触发。Create Trigger abc on 表For insert , update , deleteAs A 只是修改B只是插入 C只是删除 D 修改、插入、删除90.要删除一个名为A1的过程,用命令:CProcedure A1 。A Delete B Alter C Drop D Execute91. 触发器可引用视图或临时表,并产生两个特殊的表和A。A Deleted ,Inserted B Delete,Insert C View,Table D View1,table192. 执行带参数

25、的过程,正确的方法为B。A 过程名(参数)B过程名参数C过程名参数DA,B,C三种都可以94.当删除D时,与它关联的触发器也同时被删除。A 视图B临时表C过程D表95.数据库设计中的概念结构设计的主要工具是( )。A、数据模型B、ER模型 C、新奥尔良模型 D、概念模型96.数据库设计中的逻辑结构设计的任务是把( D )阶段产生的概念数据库模式变换为逻辑结构的数据库模式。A、需求分析B、物理设计 C、逻辑结构设计D、概念结构设计97.一个规范化的关系至少应当满足( C )的要求。A、一范式B、二范式 C、三范式D、四范式98.( A )是位于用户与操作系统之间的一层数据管理软件,它属于系统软件

26、,它为用户或应用程序提供访问数据库的方法。数据库在建立、使用和维护时由其统一管理、统一控制。A、DBMSB、DBC、DBSD、DBA99.( C )数据库是被长期存放在计算机内的、有组织的、统一管理的相关数据的集合。A、DATAB、INFORMATIONC、DBD、DBS100. 数据库应用系统是由数据库、数据库管理系统(及其开发工具)、应用系统、( D )和用户构成。A、DBMSB、DBC、DBSD、DBA二判断题:(每题2分)3、(y)在SQL SERVER中,替代触发器的执行是在数据的插入、更新或删除之前执行的。4、 ( n)因为通过视图可以插入、修改或删除数据,因此视图也是一个虚实表,

27、SQL SERVER将它保存在syscommens系统表中。5、(y)当登录到WINDOWS的用户与SQL Server联接时,用户不用提供SQL Server帐号,这种认证模式就是WINDOWS认证机制。7、(y)通配符“_”表示某单个字符。8、(n)域完整性又称为引用完整性。10(y)一个表上只能建立一个聚集索引。11、 SQL SERVER 中,使用SET语句一次可以给多个变量赋值,使用SELECT语句一次只能给一个变量赋值。( n)13、 在SQL SERVER 2005中,空值(NULL)意味着没有输入,它的存在通常表明值未知或未定义。(y)14、 SQL语言是一种用于存取和查询数据

28、,更新并管理关系数据库系统的数据库查询和编程语言。(y)15、 SQL SERVER 2005中,一个物理磁盘只能存放一个数据库,一个数据库也只能存放在一个物理磁盘上。(y)17、 SQL Server中关键字是用来惟一标识表中每一行的属性或属性组合。 (y)18、 SERVER 中,数据库是用来存放表和索引的逻辑实体。 (y)20 批处理是包含一个或多个T-SQL语句的组,它将一次性地发送到SQL SERVER中执行。( y )21 自定义函数在对任何表的查询中都可以使用 。 (y)23 由于触发器是特殊类型的存储过程,因此它可以在程序中被调用执行。 (n)25 存储过程的输出结果可以传递给

29、一个变量。 (y)28 视图有与表相同的功能,在视图上也可以创建触发器。 (n)35、在CREATE INDEX语句中,使用CLUSTERED来建立簇索引。( )37、恢复数据,可以在查询分析器中使用这样的命令:BACKUP DATABASE database_name FROM backup (× ) 41、在SQL SERVER中,触发器的执行是在数据的插入、更新或删除之前执行的。(×)42、在 Transact-SQL 语句的WHERE子句中,完全可以用IN子查询来代替OR逻辑表达式。(×)43、通配符“_”表示某单个字符。()55 为了能够成功的安装和运行

30、Microsoft SQL Server 2005,必须安装Internet Explror 5.0。( n )58 在创建表时,不能指定将表放在某个文件上,只能指定将表放在某个文件组上。如果希望将某个表放在特定的文件上,那么必须通过创建文件组来实现。(y )59 DELETE语句只是删除表中的数据,表本身依然存在。( n)60 索引是建立在行的上面。( y)61 索引越多越好。(n )62 视图本身没有数据,因为视图是一个虚拟的表。(y)63 存储过程是存储在服务器上的一组预编译的Transcat-SQL语句。( y )65 安装Microsoft SQL Server 2005 企业版对操

31、作系统的最低要求可以是Microsoft Windows Professional。( y )67 认证模式是在安装SQL Server过程中选择的。系统安装之后,可以重新修改SQL Server系统的认证模式。( n)68 用户定义的数据类型正在被某个表的定义引用时,这些数据类型不能被删除。(y )69 使用子查询时,必须使用括号把子查询括起来,以便区分外查询和子查询。( n)70 视图本身没有数据,因为视图是一个虚拟的表。( y )71 建触发器的时候可以不是表的所有者或数据库的所有者。( y )三、简答题1、简述文件系统与数据库系统的区别与联系。文件系统和数据库系统之间的区别。(1)文件

32、系统用文件将数据长期保存在外存上,数据库系统用数据库统一存储数据;(2)文件系统中的程序和数据有一定的联系,数据库系统中的程序和数据分离;(3)文件系统用操作系统中的存取方法对数据进行管理,数据库系统用DBMS统一管理和控制数据;(4)文件系统实现以文件为单位的数据共享,数据库系统实现以记录和字段为单位的数据共享。文件系统和数据库系统之间的联系:(1)均为数据组织的管理技术;(2)均由数据管理软件管理数据,程序与数据之间用存取方法进行转换;(3)数据库系统是在文件系统的基础上发展而来的。2、简述集成服务体系结构的特点。3、数据控制语言的作用是什么?是用来设置或者更改数据库用户或角色权限的语句,

33、这些语句包括GRANT、DENY、REVOKE等语句,在默认状态下,只有sysadmin、dbcreator、db_owner或db_securityadmin等角色的成员才有权利执行数据控制语言。4、数据文件和日志文件的作用是什么?日志文件用来记录数据库的更新操作,数据文件用来存储数据5、数据库对象所有者与架构分离,对表的建立有何影响?6、何为聚集索引?有什么特点?聚集索引是指数据库表行中数据的物理顺序与键值的逻辑(索引)顺序相同。一个表只能有一个聚集索引,因为一个表的物理顺序只有一种情况,所以,对应的聚集索引只能有一个。聚集索引的特点:1)聚集索引对于那些经常要搜索范围值得列特别有效。使用

34、聚集索引找到包含第一个值的行后,便可以确保包含后续索引值的行在物理上相邻;2)对表中数据进行排序时,通常是按照某个字段来排序,可以在该字段上创建聚集索引,避免每次查询该列时都进行排序,节约成本。3)先创建聚集索引,再创建非聚集索引。这样在创建聚集索引后就无需重新生成非聚集索引了。4)聚集索引不适合用于频繁更改的列,因为这将导致整行移动。7、简述视图的优点。简单性,安全性,逻辑数据独立性。8、简述数据透视表及其作用。数据透视表是交互式报表,可快速合并和比较大量数据。您可旋转其行和列以看到源数据的不同汇总,而且可显示感兴趣区域的明细数据。9、什么是数据库的完整性?数据库完整性(Database I

35、ntegrity)是指数据库中数据的正确性和相容性。10、什么是1NF?第一范式(1NF): 无重复的列,不存在某列包含其他列的内容。11、简述数据库管理系统的主要功能。(1)数据定义功能(2)数据操纵功能(3)数据库的运行控制功能(4)数据库的维护功能(5)数据字典的功能12、简述企业管理器主要功能。启动和停止服务器 注册服务器 配置本地和远程服务器 配置并管理多个服务器的安装管理数据库用户(用户、系统管理员和操作员) 管理系统管理员(sa)的密码建立和计划作业建立警告并配置SQLServer建立和管理数据库建立和管理数据库对象:表、索引、视图、存储过程、触发器等管理其他SQL Server

36、服务13、T-SQL的数据类型有哪几类?1.二进制 2.精确数字3.货币4.近似数字5.字符6.日期时间7.用户自定义14、为什么要进行数据库的分离和附加操作?在你需要把数据库拷到U盘或者保存到其他地方时候就必须分离 不然无法移动的 附加的情况则是你需要用到你的数据库系统里没有的数据库时你就需要附加你需要的数据库15、如何一次向表中添加多条记录?直接通过insert语句多次插入即可。16、何为非聚集索引?有什么特点?非聚集索引是一种索引,该索引中索引的逻辑顺序与磁盘上行的物理存储顺序不同。非聚集索引的特点:1)不适合返回大型结果集的查询2)适合返回精确匹配的查询的搜索条件(where子句)中经

37、常使用的列。17、简述存储器与触发器的异同。触发器是一种特殊类型的存储过程,通常用于实现强制业务规则和数据完整性。存储过程是通过存储过程名称被调用执行,而触发器是通过事情触发而由系统自动执行的。18、简述用查询结果创建新表的方法。select * into newtable from oldtable where 条件20、什么是3NF?3NF,即第三范式是要求一个数据库表中不包含已在其它表中已包含的非主关键字信息。四、 操作题1# 现有关系数据库如下: 数据库名:教师数据库教师表(编号 char(6),姓名,性别,民族,职称,身份证号) 课程表(课号 char(6),名称) 任课表(ID,教

38、师编号,课号,课时数) 用SQL语言实现下列功能的sql语句代码:1. 创建上述三表的建库、建表代码(14分); 要求使用:主键(教师表.编号,课程表.课号)、外键(任课表.教师编号,任课表.课号)、默认(民族)、非空(民族,姓名)、唯一(身份证号)、检查(性别、课时数),自动编号(ID)2. 将下列课程信息添加到课程表的代码(6分) 课号 课程名称 100001 SQL Server数据库 100002 数据结构 100003 VB程序设计 修改 课号为100003的课程名称:Visual Basic程序设计 删除 课号为100003的课程信息 3. 写出创建任课表视图(教师编号,姓名,课号

39、,课程名称,课时数)的代码;(4分)4. 写出创建某门课任课教师内嵌表值函数以及检索的代码;(6分) 检索:所有代'SQL Server数据库'这门课程的老师姓名;5. 写出创建统计课时数:输出最大课时数、最低课时数、平均课时的存储过程以及执行代码;(6分)6. 写出创建:计算某教师代课总课时,并将值返回的存储过程以及执行代码。(6分)执行:计算“郭老师”的总课时。(6分)7. 检索有一门或一门以上课程课时数大于90的所有教师的信息,包括编号、姓名。(4分)8. 建一个规则,并将其绑定到教师表的职称列上,规定取值为('教授','副教授','

40、;讲师', '助教')之一。(4分)答案:1.create database 教师数据库 -(2分)use 教师数据库gocreate table 教师表 -(6分)(编号 char(6) primary key,姓名 nchar(4) not null,性别 nchar(1) check(性别 in ('男', '女'),民族 nchar(8) default '汉族' not null,职称 nchar(12),身份证号 char(18) unique) create table 课程表 -(2分)(课号 char(6

41、) primary key,名称 char(40) not null) create table 任课表 -(4分)(ID IDENTITY(1, 1), 教师编号 char(6) references 学生表(学号),课号 char(6) references 课程表(课号),课时数 integer check(课时数 between 0 and 200) 2. insert 课程表 values('100001', 'SQL Server数据库') insert 课程表 values('100002', '数据结构')inse

42、rt 课程表 values('100003', 'VB程序设计')update 课程表 set 名称='Visual Basic程序设计' where 课号='100003'delete 课程表 where 课号='100003'3. create view 任课表视图 asselect 教师编号,姓名,课号, 课程名称,课时数 from 教师表,任课表where 教师表.编号=任课表.教师编号4. create function 某门课任课教师(课程名 varchar(15)returns table asret

43、urn (select 课程名称, 课时数, 教师姓名=姓名 from 任课表视图where 课程名=课程名)goselect * from 某门课任课教师('SQL Server数据库')5. create procedure 统计课时数 asselect 最大课时数=max(课时) ,最小课时数=min(课时),平均课时数=avg(课时) from 任课表goexecute 统计课时6. create procedure 统计课时 教师名 nchar(16),asbegindeclare 总课时 int select 总课时=sum (课时) from 任课表视图 wher

44、e 姓名 = 教师名 endgoexecute 统计课时 '郭老师'7. select 编号, 姓名 from 教师表where编号 in (select distinct 教师编号 from 任课表 where课时数>=90)8. create rule zhicheng _ruleas zhicheng in ('教授','副教授','讲师', '助教')gosp_bindrule zhicheng_rule, '教师表.职称'2#有一个学生课程数据库,数据库中包括三个表:学生表Stude

45、nt由学号(Sno)、姓名(Sname)、性别(Ssex)、年龄(Sage)、所在系(Sdept)五个属性组成,记为: Student(Sno,Sname,Ssex,Sage,Sdept) ,Sno 为关键字。课程表Course由课程号(Cno)、课程名(Cname)、先修课号(Cpno)、学分(Ccredit)四个属性组成,记为:Course(Cno,Cname,Cpno,Ccredit) Cno为关键字。 成绩表SG由学号(Sno)、课程号(Cno)、成绩(Grade)三个属性组成,记为: SG(Sno,Cno,Grade) (SNO, CNO)为关键字。用SQL语言实现下列功能:1建立学

46、生表Student,其中学号属性不能为空,并且其值是唯一的。2向Student表增加“入学时间(Scome)”列,其数据类型为日期型。3查询选修了3号课程的学生的学号及其成绩,查询结果按分数的降序排列。4查询学习1号课程的学生最高分数、平均成绩。5查询与“李洋”在同一个系学习的学生。6将计算机系全体学生的成绩置零。7删除学号为05019的学生记录。8删除计算机系所有学生的成绩记录。答案:1create table student (Sno char(5) primary key, Sname char(20), Ssex char(2), Sage int, Sdept char(15)2 s

47、elect distinct sno from sgwhere grade < 603 update student set sage=22 where sno='05001'4select avg(grade) from sgwhere cno='1'5 create procedure getdetailbynamename nvarchar(10)asif (select count(*) from student where sname = name) > 0 select * from student where sname = namee

48、lse print '不存在姓名为 ' + name + ' 的学生资料'6. select sname,ssex,sage from sdudent where sdept=计算机系and sname like '赵 %' and ssex ='女' 7 create view 学生成绩表视图 asselect sno, sname, cno, cname, grade from sg, sdudentwhere sC、sno=sdudent.sno8 insert into student values ('05020

49、', '丁莉', '女', 17, '计算机系')3#假定使用的“图书”、“读者”、“借阅”和ZGJ K库的定义如下:图书(总编号C(6),分类号C(8),书名C<16),作者C(6),出版单位C<16),单价N(7,2)读者(借书证号C(4),单位C<l0>,姓名C(6),性别C<2),职称C<6),地址C(16)借阅(借书证号C(4),总编号C(6),借书日期D()ZGJK(职工号C(6),姓名C(6),性别C(2),出生日期D<),职称C(6),基本工资N(7,2)1. 查 询 出“图书”数

50、据库中高等教育出版社出版的单价不低于20元的所有各类的图书。2. 按 单 价升序显示“图书”库中清华大学版的所有图书。3. 分 组 统计出“借阅”库中每一种借书证号所借图书的册数。4. 联 接 查询“借阅”、“读者”和“图书”三个库,得到每一本所借图书的读者的借书证号、姓名、单位和书名。5. 显 示 出ZGJK 库中基本工资在300至500元之间的所有职工记录。6. 在 ZG JK 库上按职工号建立一个单索引文件zgh.id x,并自动成为主索引。7. 使 ZG JK 库上的结构化复合索引文件中的标记为“职称”的索引成为主控索引。1. selectd istinct书名,作者,单价;from

51、图书;where出版单位=“高等教育”AND单价>=20.0 02. select ;from 图 书;where出版单位=“清华大学”;orderb y单价3. select借书证号,count( );from 借 阅;group by借书证号4. select x.借书证号,Y.姓名,Y.单位,z.书名;from 借 阅x,读者Y,图书z;where x. 借书证号=Y.借书证号and x.总编号=z.总编号5. usez gjkList for 基本工资>=300.anD、基本工资<= 5006. usez gjkindex o n职工号toz gh7. usez gj

52、kset order t ot ag职称4#在名称为商品库的数据库中包含有商品表1和商品表2,它们的定义分别为:商 品表 1(商品代号char(8),分类名char(8),单价float,数量int)商 品表 2(商品代号char(8),产地char(6),品牌char(6)在名称为教学库的数据库中包含有学生、课程和选课三个表,它们的定义分别为:学生 ( 学 生号char(7),姓名char(6),性别。har(2),出生日期datetime,专 业 ch ar (1 0 ), 年级int)课程 ( 课 程号char<4),课程名char(10),课程学分int)选课 ( 学 生号cha

53、r(7),课程号。har(4),成绩int)1. 从 商 品库中查询出所有商品的不同品牌。2. 从 教 学库中查询出学生号为s1的学生和学生号为s2的学生所选修的共同课程的课程号。3. 从 教 学库中查询出每个专业的学生人数,并按人数多少降序排列。4.从商品库中查询出每类(即分类名相同)商品的最高单价。5.从商品库中查询出同一类商品多于一种的所有分类名1. select distinct品牌fro m 商 品 表 22. s electx .学生号,Y.学生号,Y.课程号fro m 选 课 x, 选课Ywh er e x . 学 生号=s1a ndy .学生号=s2and x .课 程 号 = Y. 课 程 号3. select专业,count(,)as专业人数from 学 生group by 专 业order by 专 业人数desc4. select分类名,max(单价)as最高单价fro m 商 品 表 1group b

温馨提示

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

评论

0/150

提交评论