《《SQL数据库管理与开发》试题(O卷).doc》由会员分享,可在线阅读,更多相关《《SQL数据库管理与开发》试题(O卷).doc(6页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、SQL数据库管理与开发教程与实训试题(O卷)一、单项选择题:(每小题1分,共10分)1不属于数据库管理系统三个要素组成的是( )。A. 数据结构B. 数据操作C. 完整性约束D. 数据分析2删除表中数据的语句是( )。A. DROPB. ALTERC. UPDATED. DELETE3.限制输入到列的值的范围,应使用( )约束。A. CHECKB. PRIMARY KEYC. FOREIGN KEYD. UNIQUE 4. 触发器可引用视图或临时表,并产生两个特殊的表是( )。ADeleted、InsertedB. Delete、InsertC. View、TableD. View1、tabl
2、e15使用索引下列哪个说法是正确的( )。A. 节省磁盘空间B. 缩短查询时间C. 在执行插入、修改、删除时节省时间D. 与表无关6关于视图下列哪一个说法是错误的( )。A. 视图是一种虚拟表 B. 视图中也存有数据 C. 视图也可由视图派生出来 D. 视图是保存在数据库中的SELECT查询7创建表的命令是( )。A. Create database 表名B. Create VIEW 表名C. Create TABLE 表名D. ALTER TABLE 表名8用于模糊查询的匹配符是( )。A. _B. C. D. LIKE9. 在sql SERVER中不是系统数据库的是( )。A. maste
3、rB. modelC. tempdbD. pubs10.关于关系图下列哪一个是正确的( )。A. 关系图是在同一个表中不同字段之间建立关联B. 关系图是在不同表中的字段之间建立关联C. 关系图是表与表之间建立关联,与字段无关。D. 关系图是在不同数据库之间建立关联二、判断题:(每小题1分,共10分)1在SQL Server中用户不能建立全局变量。2备份时只能对数据文件进行备份。3自定义函数在对任何表的查询中都可以使用。4触发器是通过事件进行触发而被执行的。5主键字段允许为空。6SQL Server 自动为primary key约束的列建立一个索引。7SQL Server的数据库可以导出为Acc
4、ess数据库。8删除表时,表中的触发器不被同时删除。9数据库的名称可在企业管理器中重命名。10触发器与约束发生冲突,触发器将不执行。三、填空题:(每题1分,共计20分)1DBMS是位于用户与操作系统之间的一层数据管理软件,它属于_软件,它为用户或应用程序提供访问数据库的方法。2关系模型用_结构表示实体集,用键来表示实体间联系。3数据库是被长期存放在计算机内的、有组织的、统一管理的相关_的集合。4数据库管理系统由三个要素组成:_、_和_。5SQL Server数据库的体系结构也是三级模式结构,在SQL Server中,_对应于视图、_对应于基本表、_对应于存储文件。6_是为保证数据库中数据的正确
5、性和相容性,对关系模型提出的某种约束条件或规则。7数据完整性的类型有_完整性、_完整性、_完整性和用户自定义完整性。8视图是由一个或多个_或视图导出的_或查询表。9_是指服务器管理、数据库管理和数据库访问特定的权限的集合。10SQL Server的安全性分为两类:_安全性和_安全性。11_是已经存储在SQL Server服务器中的一组预编译过的Transact-SQL语句。12当_被删除时与它关联的触发器也一同被删除。四、简述题(每小题5分,共20分)1自定义内嵌表值函数与视图的使用有什么不同?2什么是数据库备份和恢复?3什么是视图?它和表有什么区别?4自定义函数与存储过程的区别是什么?五、设
6、计题(每小题5分,共40分)现有关系数据库如下: 数据库名:学生成绩数据库学生表(班级编号,学号,姓名,性别,民族,身份证号,出生日期) 课程表(课程号,课程名) 成绩表(ID,学号,课号,分数) 用SQL语言实现下列功能的sql语句代码:1在学生成绩数据库的学生表中查询年龄为20岁或22岁的学生。2在学生成绩数据库中查询每个学生的班级编号、学号、姓名、平均分,结果按平均分降序排列,均分相同者按班级排列。3编写一个自定义函数,根据学生表中的出生日期列,计算年龄。4创建一个视图教学成绩表视图显示学生的学号、姓名、课程名、分数。5编写一个存储过程,输入学号,从教学成绩表视图显示该学生的姓名、课程名
7、、分数。6把学生表、成绩表通过学号建立约束关系。7把学生表、成绩表通过学号建立约束关系。8在学生表中插入记录:班级编号 学号 姓名 性别 民族 身份证号 出生日期 王莉欣 女 汉 1979-06-25 张晶 男 NULL NULL把张晶的民族改为“汉”、出生日期改为“1980-12-24”SQL Server数据库答案N一、单项选择题:(每小题1分,共10分)12345678910DDDABBCDDB二、判断题:(10分)(正确的在答题纸对应的题号下打,错误的打)12345678910三、填空题:(每题1分,共计20分)1、系统2、二维表3、数据4、数据结构、数据操作、完整性约束5、外模式、模
8、式、内模式6、关系完整性7、实体、域、参照8、数据表、虚拟表9、角色10、数据访问、数据运行11、存储过程12、表四、简述题(每小题5分,共20分)1自定义内嵌表值函数与视图的使用有什么不同?答:内嵌标值函数可用于实现参数化视图的功能。这种类型的函数在使用参数和扩展索引视图方面提供了比视图更多的灵活性。2什么是数据库备份和恢复?答:备份是指将当前的数据库系统、数据文件或日志文件复制到一个专门的备份服务器、活动磁盘或者其他能长期存储数据的介质上,作为副本。数据库备份记录了在进行备份这一操作时数据库中所有数据的状态。一旦数据库因意外而遭损坏,这些备份文件可用来恢复数据库。恢复是与备份相对应的数据库
9、管理工作,系统进行数据库恢复的过程中,自动执行安全性检查,然后根据数据库备份自动创建数据库结构,并且恢复数据库中的数据。3什么是视图?它和表有什么区别?答:视图是由一个或多个数据表(基本表)或视图导出的虚拟表或查询表,是关系数据库系统提供给用户以多种角度观察数据库中数据的重要机制。视图是虚表。所谓虚表,就是说视图不是表。因为视图只储存了她的定义(select语句),而没有储存视图对应的数据,这些数据仍存放在原来的数据表(基表),数据与基表中数据同步,即对视图的数据进行操作时,系统根据视图的定义去操作与视图相关联的基本表。4答:自定义函数在被调用的位置上返回数据值,存储过程既不能在被调用的位置上
10、返回数据,也不能被引用在语句当中。五、设计题(每小题5分,共40分)1在学生成绩数据库的学生表中查询年龄为20岁或22岁的学生use 教学成绩管理数据库select 姓名, 性别, 年龄=datediff(year,出生日期,getdate() from 学生表where (datediff(year,出生日期,getdate()=20) or (datediff(year,出生日期,getdate()=22)2在学生成绩数据库中查询每个学生的班级编号、学号、姓名、平均分,结果按平均分降序排列,均分相同者按班级排列use 教学成绩管理数据库select 班级编号,a.学号,a.姓名, avg(
11、分数) 平均分from 学生表 as a join成绩表 as b on a.学号 = b.学号group by 班级编号, a.学号,a.姓名order by avg(分数) desc, 班级编号 asc3编写一个自定义函数,根据学生表中的出生日期列,计算年龄。CREATE FUNCTION dbo.计算年龄(vardate datetime,Curdate datetime) RETURNS tinyint AS BEGIN return datediff(yyyy, vardate, Curdate)END4创建一个视图“教学成绩表视图” 显示学生的学号、姓名、课程名、分数。CREATE
12、 VIEW 教学成绩表视图ASSELECT 学号, 姓名, 课程名, 分数FROM 学生表, 成绩表WHERE 学生表.学号=成绩表.学号5编写一个存储过程,输入学号,从“教学成绩表视图” 显示该学生的姓名、课程名、分数。CREATE PROCEDURE 成绩1 xh char (6)asselect 姓名,课程名称,分数 from 教学成绩表视图where 学号=xh6把学生表、成绩表通过“学号”建立约束关系。alter table 学生表 add constraint 约束1 foreign key (学号) references 成绩表 (学号)7创建一个触发器,当修改学生表中的姓名时,显示“学生姓名已被修改”。Create Trigger 触发器7 On 学生表For updataAsPrint 学生姓名已被修改Go8insert 学生表 values(,王莉欣,女,汉,1979-06-25)insert 学生表 values (, 张晶, 男, null, null, null)update 学生表 set 民族=汉, 身份证号=, 出生日期=1980-02-26where 姓名=张晶