
SQL大数据库系统及应用.doc
19页word机 密★启用前某某理工大学网络教育学院2017年秋《SQL数据库系统与应用》期末考试复习题☆ 须知事项:本复习题总分为共:400分一、填空题1.在关系数据库的规X中,在一个关系中,消除重复字段,且各字段都是最小的逻辑存储单元代表第______________X式答案:一 2.在索引命令中使用关键字CLUSTERED和NONCLUSTERED分别表示将建立的是______________和______________答案:聚集索引、非聚集索引 3.常见的关系数据库有ACCESS、______________和______________答案:SQL Server、Oracle ……答案:Delete、表名5.向表中______________数据的命令是insert into表名______________〔constant1,constant2,……〕答案:插入、values 6.在一个表上,最多可以定义______________个聚集索引,最多可以有______________个非聚集索引答案:1、多 7.ABS函数的功能是返回数值表达式的______________。
答案:绝对值 8.LIKE查询中______________符号代表由零个或更多字符组成的任意字符串,下划线“_〞符号代表______________字符答案:%、任意单个 9.创建表的语句是:______________答案:CREATE TABLE 表名10.在Microsoft SQL Server 2008中,主数据文件的后缀是______________答案:.mdf 11.在Microsoft SQL Server 2008中,日志文件的后缀是______________答案:.ldf 12.创建索引的语句是:______________ INDEX…… 答案:CREATE13.语句 select round(12.3421,2),round(23.4567,3)的执行结果是:______________和______________答案:14.关系是笛卡尔积的有限子集,所以是一个______________维表,表的每行对应一个______________,每列对应一个______________答案:二、元组、域二、问答题1.对SQL Server实例访问,SQL Server 2008支持哪几种身份验证模式? 答案:SQL Server 2008支持两种身份验证模式:Windows身份验证模式(2分)和混合身份验证模式(2分)。
Windows身份验证模式使用Windows操作系统中的信息验证账户名和密码,默认的身份验证模式〔3分〕混合身份验证模式允许用户使用Windows身份验证或SQL Server身份验证进展连接(3分)2.简述SELECT语句中的FROM、WHERE以与ORDER BY子句的作用SQL Server 2008系统中主要数据库对象都有哪些?答案:在SELECT语句中:FROM子句:用来指定数据来源的表;〔2分〕WHERE子句:用来限定返回行的搜索条件;〔2分〕ORDER BY子句:用来指定结果的排序方式〔2分〕主要的数据库对象包括数据库关系图、表、视图、同义词、存储过程、函数、触发器、程序集、类型、规如此和默认值等〔酌情给分,共4分〕3. 如何使用IF…ELSE流程控制语句?答案:一个逻辑表达式的结果要么为真,要么为假根据不同的结果,对应于不同的操作这时就需要使用IF…ELSE语句在程序中对于给定条件进展判断语法格式如下:IF 条件表达式 {语句体1} [ELSE {语句体2}]〔5分〕说明:● 条件表达式的运算结果应该为TRUE(真)或FALSE(假),如果条件表达式中含有SELECT语句,如此必须用圆括号将SELECT语句括起来;〔2分〕● 当条件表达式的值为TRUE时执行语句体1,然后执行IF语句之后的语句;如果条件表达式的值为FALSE,如此执行ELSE关键字后面的语句体2,然后执行IF语句之后的语句;〔2分〕可以在IF区域或者ELSE区域嵌套另一个IF语句,对于嵌套的层数没有限制。
〔1分〕WHILE流程控制语句?答案:WHILE语句是一种将同一段代码循环运行屡次的方法,它可以根据一个条件表达式的结果,将代码从0次开始运行到指定次数,或者是持续运行直到遇见BREAK关键字退出循环〔5分〕WHILE语句的语法格式如下: WHILE 条件表达式Begin 循环体 end 可以在循环体内设置BREAK和CONTINUE关键字,以便控制循环语句的执行〔5分〕5. T-SQL的注释符是什么?参见p67答案:注释也称注解,是程序代码中不执行的文本字符串注释主要描述程序名称、作者名称、变量说明、代码更改日期、算法描述等使用注释对代码进展说明,不仅能够使程序易读易懂,而且有助于日后对程序的管理与维护〔5分〕在T-SQL中,可以使用两种类型的注释符:● 注释符“--〞用于单行注释〔2分〕● 注释符“/* */〞,用于注释多行文字〔3分〕6. SQL语句中SUM函数、COUNT函数、AVG函数的功能是什么? 答案:SUM函数:计算值的总和并返回总数COUNT函数:计算记录数AVG函数:返回指定列中的平均值7. 简述插入操作过程中的常见异常情况答: 1)插入数据值的个数多于列的个数2)提供数据的类型与列类型不兼容3)插入数据时违背了约束8.对表进展数据操作包括哪几种?答: 包括数据的插入,修改,删除三种操作9. 在关系数据库中是按照“二维表〞的形式来组织数据的,,每X表由哪两局部组成?答: 一局部是关于表的结构定义信息,包括表的名称,列的名称,列的长度和列的数据类型等;另一局部是存储在表中的用户数据。
10. SQL Server 中,约束条件有哪几种类型,都是什么?答: 有五种类型:空值约束,唯一约束,主键约束,外键约束,检查约束.11. 说明HAVING 子句与WHERE子句之间的区别答: WHERE子句是用来指定数据库表中数据行应该满足的条件,HAVING子句是在分组(GROUP BY子句)前提下选择每一个分组应该满足的条件12. 简述修改操作过程中的常见异常情况答:1)没有要修改的数据2)设置新值时,数据类型不兼容.3)修改数据时违背了约束13. SQL语言的命令一般分为哪四类语句?答:分为查询,数据操纵,数据定义和数据控制四类语句四、程序题1.有家企业要用表t1来存储客户的信息客户的信息包括:代号〔int,主键〕,名称〔char(20)〕,〔char(20)〕, 〔char(20)〕,备注〔nvarchar(1000)〕〔1〕请写出创建该表的SQL语句〔2〕后来因流行,需要在表t1中再添加列“〞,该列的类型是char〔11〕请写出添加该列的SQL语句答案:〔1〕酌情给分〔5分〕Create table t1(代号 int primary key ,名称 char(20), char(20), char(20),备注 nvarchar(1000)) 〔2〕酌情给分〔5分〕alter table t1 add char(11)2.〔1〕创建学生信息表,学生表的信息包括:StudID〔代表学号char(8),非空主键〕,Name〔学生某某varchar(20),非空〕,Birthday〔生日,非空〕,DeptID〔院系号char(2),非空〕。
请创建该表〔2〕给某公司创建表tblEmployees:存储雇员的代号〔4个字符,唯一〕、某某〔18个字符〕、名字〔20个字符〕和工资信息请写出创建这个表的T-SQL语句,要保证:工资的值大于0,某某唯一答案:代码酌情给分,每个5分〔1〕CREATE TABLE student( StudID char(8) not null PRIMARY KEY, Name varchar(20) not null, Birthday date not null, DeptID char(2) not null)〔2〕create table tblEmployees( ID char(4) unique, IDCARD char(18) unique,Name char(20),Gongzi int check (Gongzi>0))3. 用SQL语言实现如下功能的sql语句代码:〔1〕创建数据表[宿舍表]:宿舍表(宿舍号 char(6),宿舍),要求使用:主键(宿舍号)、宿舍:以847开头的7位〔2〕创建数据表[同学表]:同学表(学号 char(6),某某,性别,年龄,民族,某某号,宿舍号) ,要求使用:主键(学号)、外键(宿舍号)、默认(民族)、非空(民族,某某,年龄)、唯一(某某号)、检查(性别)〔3〕将如下宿舍信息添加到宿舍表: 宿舍号 宿舍 101 8471157 102 8471777答案:酌情给分,共10分〔1〕create table 宿舍表([宿舍号] char(6) primary key,[宿舍] char(7) check([宿舍] like '847[0-9][0-9][0-9][0-9]'))〔2〕create table 同学表(学号 char(6) primary key,某某 nchar(4) not null,性别 nchar(1) check(性别 in ('男', '女')),年龄 int ,民族 nchar(8) default '汉族' not null,某某号 char(18) unique,宿舍号 char(6) references 宿舍表(宿舍号))〔3〕insert 宿舍表 values('101', '8471157')insert 宿舍表 values('102', '8471777')4.根据以下情况,写出创建course表的语句。
属性列数据类型长度空值列约束cs_id nVarChar4Not NullPKcs_nmnVarChar20Not Nullcs_tmintNullcs_scintNull答案:酌情给分,共10分CREATE TABLE course( cs_id nVarChar(4) primary key NOT NULL , cs_nm nVarChar(20) NOT NULL , cs_tm int NULL , cs_sc int NULL)5.〔1〕请写出在某数据库中执行以下语句后的输出结果CREATE TABLE tabl(O CHAR(3),NAME VARCHAR(20),CLASS VARCHAR(20))INSERT INTO tabl values('001','方健',。
