SQL复习题

合集下载

SQL期末复习简答题

SQL期末复习简答题

SQL期末复习简答题第⼀章:数据库概述1.SQL Server的系统数据库有哪些?其作⽤是什么?答:6个系统数据库a)Master:记录了SQL Server系统的所有系统信息。

这些系统信息包括所有的登录信息、系统配置信息、SQL Server的初始化信息和其他系统数据库及⽤户数据库的相关信息。

b)Model:它是所有⽤户数据库和Tempdb数据库的模板数据库。

它包括Master数据库所有系统表的⼦集,这些系统数据库是每个⽤户定义数据库所需要的。

c)Msdb:代理数据库,为其警报、任务调度和记录操作员的操作提供存储空间。

d)Tempdb:是⼀个临时数据库。

它为所有的临时表、临时存储过程及其他临时操作提供存储空间。

e)Pubs和Northwind:是两个实例数据库。

2.SQL Server最重要的系统表有哪些?其作⽤是什么?答:a)Sysobjects:出现在每个数据库中,它对每个数据库对象含有⼀⾏记录。

b)Syscolumns:出现在Master数据库和每个⽤户⾃定义的数据库中,它对基表或者视图的每个列和存储过程中的每个参数都含有⼀⾏记录。

c)Sysindexes:出现在Master数据库和每个⽤户⾃定义的数据库中,它对每个索引和没有聚集索引的每个表都有含有⼀⾏记录,它还对包括⽂本或图像数据的每个表都有⼀⾏记录。

d)Sysusers:出现在Master数据库和每个⽤户⾃定义的数据库中,它对整个数据库中的每个Windows NT⽤户、Windows NT⽤户组、SQL Server⽤户或者SQL Server⾓⾊都含有⼀⾏记录。

e)Sysdatabases:对SQL Server系统上的每个系统数据库和⽤户⾃定义的数据库都含有⼀⾏记录,它只出现在master数据库中。

f)Sysdepends:对表、视图和存储过程之间的每个依赖关系含有⼀⾏记录,它出现在master数据库和每个⽤户⾃定义的数据库中。

SQL数据库期末复习试题 - 选择

SQL数据库期末复习试题 - 选择

一、单项选择题(每小题1分,共10分)1下列四项中,不属于数据库特点的是( C )。

A.数据共享B.数据完整性C.数据冗余很高D.数据独立性高2.下列四项中,不属于SQL2000实用程序的是( D )。

A.企业管理器B.查询分析器C.服务管理器D.媒体播放器"SQL Server安装程序创建4个系统数据库,下列哪个不是( C )系统数据库。

A.masterB.modelC.pubD.msdbC",14.( A )是位于用户与操作系统之间的一层数据管理软件,它属于系统软件,它为用户或应用程序提供访问数据库的方法。

数据库在建立、使用和维护时由其统一管理、统一控制。

A.DBMSB.DBC.DBSD.DBAA",5.在SQL中,建立表用的命令是 ( B )。

A.CREATE SCHEMAB.CREATE TABLEC.CREATE VIEWD.CREATE INDEXB",16. SQL语言中,条件“年龄 BETWEEN 15 AND 35”表示年龄在15至35之间,且( A )。

A.包括15岁和35岁B.不包括15岁和35岁C.包括15岁但不包括35岁D.包括35岁但不包括15岁A",17.下列四项中,不正确的提法是( C )。

A.SQL语言是关系数据库的国际标准语言B.SQL语言具有数据定义、查询、操纵和控制功能C.SQL语言可以自动实现关系数据库的规范化D.SQL语言称为结构查询语言C",18.在MS SQL Server中,用来显示数据库信息的系统存储过程是( D )。

A. sp_dbhelpB. sp_dbC.sp_helpD.sp_helpdb9. SQL语言中,删除表中数据的命令是( A )。

A. DELETEB. DROPC. CLEARD. REMOVEA",10. SQL的视图是从( C )中导出的。

A. 基本表B. 视图C. 基本表或视图D. 数据库11.下列哪个不是sql 数据库文件的后缀。

《数据库系统概论》SQL语言复习题(含答案)

《数据库系统概论》SQL语言复习题(含答案)

SQL语言习题一、单项选择题1.SQL语言是的语言,易学习。

A.过程化B.非过程化C.格式化D.导航式答案:B2.SQL语言是语言。

A.层次数据库B.网络数据库C.关系数据库D.非数据库答案:C3.SQL语言具有的功能。

A.关系规范化、数据操纵、数据控制B.数据定义、数据操纵、数据控制C.数据定义、关系规范化、数据控制D.数据定义、关系规范化、数据操纵答案:B4.SQL语言的数据操纵语句包括SELECT,INSERT,UPDATE和DELETE等。

其中最重要的,也是使用最频繁的语句是。

A.SELECT B.INSERT C.UPDA TE D.DELETE答案:A5.SQL语言具有两种使用方式,分别称为交互式SQL和。

A.提示式SQL B.多用户SQL C.嵌入式SQL D.解释式SQL答案:C6.SQL语言中,实现数据检索的语句是。

A.SELECT B.INSERTC.UPDATE D.DELETE答案:A7.下列SQL语句中,修改表结构的是。

A.ALTER B.CREATEC.UPDATE D.INSERT答案:A第8到第11题基于这样的三个表即学生表S、课程表C和学生选课表SC,它们的结构如下:S(S#,SN,SEX,AGE,DEPT)C(C#,CN)SC(S#,C#,GRADE)其中:S#为学号,SN为姓名,SEX为性别,AGE为年龄,DEPT为系别,C#为课程号,CN为课程名,GRADE为成绩。

8.检索所有比“王华”年龄大的学生姓名、年龄和性别。

正确的SELECT语句是。

A.SELECT SN,AGE,SEX FROM SWHERE AGE>(SELECT AGE FROM SWHERE SN=’王华’)B.SELECT SN,AGE,SEX FROM SWHERE SN=’王华’C.SELECT SN,AGE,SEX FROM SWHERE AGE>(SELECT AGEWHERE SN=’王华’)D.SELECT SN,AGE,SEX FROM SWHERE AGE>王华.AGE答案:A9.检索选修课程“C2”的学生中成绩最高的学生的学号。

SQL数据库复习题

SQL数据库复习题

一、名词解释实体:客观存在并可相互区别的个体域:是一组具有相同数据类型的值的集合。

候选码:若关系中的某一属性或属性组的值能唯一地标识一个元组,则称该关系中所有满足此要求的属性或属性组为候选码。

主码:若一个关系中有多个候选码,则选定其中一个为主码。

外码:若一个关系R2 中的一个属性子集S 是另一个关系R1 的主码所对应的属性组,则称S 为R2 的外码。

主属性:候选码中的诸(各)属性称为主属性。

数据:对客观事物特征一种抽象的符号化的表示,即用一定的符号表示那些从观察或测量中所收集的基本事实数据库:计算机的存储设备上合理存放的相关联的有结构的数据集合码:设K 为关系模式R <U,F>中的属性或属性组,若K -f--->U则K为R的候选码,也称为码。

参照完整性:考虑不同关系之间或同一关系的不同元组之间的制约数据字典:用于定义数据流程图中出现的所有数据元素和处理。

通常包括数据项、数据流、数据存储和处理过程四个元素。

二、选择题1. 在数据库中,下列说法()是不正确的A.数据库避免了一切数据的重复B.若系统是完全可以控制的,则系统可确保更新时的一致性C.数据库中的数据可以共享D.数据库减少了数据冗余2. 设关系R和S的元组个数分别为100和300,关系T是R与S的笛卡尔积,则T的元组个数是()A. 400B. 10000C. 30000D. 900003. 为了防止一个用户的工作不适当地影响另一个用户,应该采取()A. 完整性控制B. 安全性控制C. 并发控制D. 访问控制4. 有一个关系:学生(学号,姓名,系别),规定学号的值域是8个数字组成的字符串,这一规则属于()A. 实体完整性约束B. 参照完整性约束C. 用户自定义完整性约束D. 关键字完整性约束5. 关系模型中,一个码是()。

A. 可以由多个任意属性组成B. 至多由一个属性组成C. 由一个或多个属性组成,其值能够惟一标识关系中一个元组D. 以上都不是6. 解决并发操作带来的数据不一致问题普遍采用()A.封锁B.存取控制C.恢复D.协商7. 设有关系R,按条件f对关系R进行选择,正确的是()∏C.R fR D.σf (R)A.R×R B.f(R)8 假设学生关系S(S#,SNAME,SEX),课程关系C(C#,CNAME),学生选课关系SC(S#,C#,GRADE)。

14(下)SQL复习题

14(下)SQL复习题

14年(下)数据库(SQL Server)复习题第一:单选1. 下列选项中可以完成对数据库中数据进行检索与更新的是()。

(A) DDL (B) DML (C) DQL (D) DSL2. DBMS提供SQL实现对数据的操作,嵌入高级语言中使用的SQL称为()。

(A) 宿主型(B) 独立型(C) 自含型(D) 嵌入型3. 数据库管理系统与操作系统、应用软件的层次关系从核心到外围依次是()。

(A) DBMS、OS、应用软件(B) DBMS、应用软件、OS(C) OS、DBMS、应用软件(D) OS、应用软件、DBMS4. 关系代数、元组关系演算这两种数据库语言之间的关系是()。

(A) 相互依赖(B) 相互独立(C) 相互等价(D) 相互转化5. 下列关于关系的说法中错误的是()。

(A) 关系中的每一个属性值是不可分解的(B) 关系中可以出现相同的元组(C) 关系中元组的顺序是无关紧要的(D) 关系中属性的顺序可以任意交换6. 下列关于E-R模型转换为关系模式的说法中正确的是()。

(A) 设计一个职员关系,将部门的所有属性放到职员关系中(B) 设计一个部门关系,将职员的所有属性放到部门关系中(C) 设计部门和职工两个关系,将职员关系的主码加入到部门关系中(D) 设计部门和职工两个关系,将部门关系的主码加入到职员关系中7. 在SQL SERVER2008 中,打开数据库应使用的命题是()。

(A) CREATE (B) OPEN (C) USE (D) FETCH8. 在SQL SERVER 2008中,存储大量文本应使用的数据类型是()。

(A) int (B) nchar (C) varchar (D) text9. 在SQL SERVER 2008中,可以使用()命令来修改表结构。

(A) DROP TABLE (B) CREATE TABLE (C) ALTER TABLE (D) MODIFY TABLE10. 关系模型中,候选码中的属性不能取空值体现了()。

SQL复习题

SQL复习题

一、单项选择题1.下列四项中,不属于数据库特点的是()。

A.数据共享B.数据完整性C.数据冗余很高D.数据独立性高2.SQL Server安装程序创建4个系统数据库,下列哪个不是()系统数据库。

A.masterB.modelC.pubD.msdb3.()是位于用户与操作系统之间的一层数据管理软件,它属于系统软件,它为用户或应用程序提供访问数据库的方法。

数据库在建立、使用和维护时由其统一管理、统一控制。

A.DBMS B.DBC.DBS D.DBA4. 在SQL中,建立表用的命令是 ( )。

A.CREATE SCHEMAB.CREATE TABLEC.CREATE VIEWD.CREATE INDEX5.SQL Server 是( )A、数据库应用程序B、数据库系统C、层次数据管理系统D、关系数据库管理系统6.现有关系:学生(学号,姓名,系号,系名),为消除数据冗余,至少需要分解为( )A、1个表B、2个表C、3个表D、4个表7.公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从职员到部门的联系类型是( )A、多对多B、多对一C、一对一D、一对多8.下面描述错误的是()。

A、每个数据文件中有且只有一个主数据文件。

B、日志文件可以存在于任意文件组中。

C、主数据文件默认为 primary 文件组。

D、文件组是为了更好的实现数据库文件组织。

9.在MS SQL Server中,用来显示数据库信息的系统存储过程是( )。

A. sp_dbhelpB. sp_dbC.sp_helpD.sp_helpdb10.SQL语言中,删除表中数据的命令是( )。

A. DELETEB. DROPC. CLEARD. REMOVE11.SQL的视图是从()中导出的。

A. 基本表B. 视图C. 基本表或视图D. 数据库12.不属于数据库管理系统三个要素组成的是()。

A. 数据结构B. 数据操作C. 完整性约束D. 数据分析13.下列途径哪个不是实现值域完整性( ) 。

(完整版)SQL复习题(附部分答案)

(完整版)SQL复习题(附部分答案)

一、单选题1.根据关系数据基于的数据模型——关系模型的特征判断下列正确的一项:(___)A.只存在一对多的实体关系,以图形方式来表示。

B.以二维表格结构来保存数据,在关系表中不允许有重复行存在。

C.能体现一对多、多对多的关系,但不能体现一对一的关系。

D.关系模型数据库是数据库发展的最初阶段。

答案[B]2、在“连接”组中有两种连接认证方式,其中在(___)方式下,需要客户端应用程序连接时提供登录时需要的用户标识和密码。

A、Windows身份验证B、SQL Server 身份验证C、以超级用户身份登录时D、其他方式登录时答案[B]3、关系数据库中,主键是(___),当运用Transact-SQL语句创建主键时,可以是(__)。

⑴ A、为标识表中唯一的实体 B、创建唯一的索引,允许空值C、只允许以表中第一字段建立D、允许有多个主键的⑵ A、create table table1(column1 char(13) not null primary key,column2 int not on primary key;B、alter table table1 with nocheck addconstraint [PK_table1] primary key nonclustered ( column1) on primary;C、alter table table1 column1 primary key ;答案[ A C]4、视图是一种常用的数据对象,可以简化数据库操作,当使用多个数据表来建立视图时,不允许在该语句中包括(___)等关键字。

A、ORDER BY,COMPUTEB、ORDER BY,COMPUTE,COMPUTR BYC、ORDER BY,COMPUTE BY,GROUP BYD、GROUP BY,COMPUTE BY答案[B ]5、在Transact-SQL语法中,SELECT语句的完整语法较复杂,但至少包括的部分(_1_),使用关键字(_2_)可以把重复行屏蔽,将多个查询结果返回一个结果集合的运算符是(_3__),如果在SELECT语句中使用聚合函数时,可以在后面使用(_4_)。

SQL数据库复习资料操作题复习(带答案)

SQL数据库复习资料操作题复习(带答案)

使用T-SQL语句完成下列题目,保存所有SQL语句为一个脚本文件,文件名为学号姓名.sql,SQL语句前加上题号。

(共60分)一、创建数据库创建一个数据库,数据库名为student,主数据文件的逻辑名为student_data,物理名称为student_data.mdf,存放在D盘根目录下,初始大小为10MB,最大可增长到50MB,增长方式是按5%比例增长;日志文件的逻辑名称为student_log,物理名称为student_log.ldf,存放在D盘根目录下,初始大小为2MB,最大可增长到5MB,按1MB 增长。

create database studenton primary(name=student_data,filename='D:\student_data.mdf',size=10MB,maxsize=50MB,filegrowth=5%)log on(name=student_log,filename='D:\student_log.ldf',size=2MB,maxsize=5MB,filegrowth=1MB)二、创建表create table 学生(学号char(8) primary key,姓名char(20) not null,性别char(2) not null check(性别in('男','女')),出生日期datetime null)use studentcreate table 成绩(学号char(8),课程名varchar(30),成绩real null check(成绩between 0 and 100)primary key(学号,课程名),foreign key (学号) references 学生(学号))3、在gxc数据库中创建商品表,表名:sp。

结构如下:use gxcCreate table sp(bh char(20) primary key,mc varchar(50) not null,xkc real,sj money)4、在gxc数据库中创建供应表,表名:gy。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

例1:从student表中检索学号为00000001的同学的姓名(StuName),要求显示学号和姓名。

USE XKGOSELECT StuNo,StuNameFROM StudentWHERE StuNo=’00000001’GO例2:从课程表中检索所有信息。

USE XKGOSELECT *FROM CourseGO例3:Student表中的班级编号列名为ClassNo。

USE XKGOSELECT ClassNoFROM StudentGO例4:从学生表(Student)中检索课程分类,要求取消值相同的那些行。

USE XKGOSELECT DISTINCT Kind FROM Course GOSELECT DISTINCT Kind,Credit FROM CourseGO例5:从学生表(Student)中检索所有信息,要求只显示前6行数据。

USE XKGOSELECT TOP 6 *FROM StudentGO从学生表(Student)中检索所有信息,要求只显示前6%行数据。

USE XKGOSELECT TOP 6 PERCENT *FROM StudentGO例6:检索课程表中的课程编码、课程名称、教师、上课时间、限制选课人数和报名人数,要求检索结果显示如下:课程编码课程名称教师上课时间限制选课人数报名人数001 SQL Server 实用技术徐人凤周二5-6节20 43……USE XKGOSELECT ’课程编码’=CouNo,’课程名称’=CouName,’教师’=Teacher,’上课时间’=SchoolTime,’限制选课人数’=LimitNum,’报名人数’=WiilNumFROM CourseGO例7:检索课程表的信息,要求给出检索结果为:课程名称课程编码SQL Server 实用技术001……USE XKGOSELECT ’课程名称’=CouName, ’课程编码’=CouNoFROM CourseGO例8:在课程表中检索“Linux操作系统”课程的主讲教师。

USE XKGOSELECT ’主讲教师’=Teacher FROM CourseWHERE CouName= ’Linux操作系统’GO例9:检索XK数据库的Course表的课程信息,要求显示报名人数与限制人数之比。

USE XKGOSELECT*,WillNum/LimitNum FROM CourseGO例10:课程表Course在XK数据库中,首先应打开XK数据库。

报名人数的列名为WillNum,计算最小、最大和平均值需要使用MIN ()、MAX()、A VG()函数,在括号内写上要计算机的列名,即WillNum。

USE XKGOSELECT’最小的报名人数’= MIN(WillNum),’最大的报名人数’= MAX(WillNum),’平均报名人数’= A VG(WillNum)FROM CourseGO例11:检索课程信息(包括报名人数与限制人数之比)。

要求检索结果按照报名人数升序排序。

USE XKGOSELECT*,WillNum/LimitNum ‘报名人数与限制人数之比’FROM CourseORDER BY WillNumGO例12:检索课程表的教师名、课程号、课程名、,要求检索结果首先按照教师名降序排序,教师名相同时,则按照课程号升序排序。

USE XKGOSELECT Teacher AS’教师名’,CouNo AS’课程号’,CouName AS ’课程名’FROM CourseORDER BY Teacher DESC,CouN oGO例13:检索课程号为004、007、013的课程名称。

USE XKGOSELECT CouName AS ’课程名称’FROM CourseWHERE CouNo=’004’OR CouNo=’007’ OR CouNo=’013’GO或USE XKGOSELECT CouName AS ’课程名称’FROM CourseWHERE CouNo IN(’004’, ’007’ ,’013’)GO例14:检索课程号不为004、007、013的课程号和课程名称。

USE XKGOSELECT CouNo AS ’课程号’ ,CouName AS ’课程名称’FROM CourseWHERE CouNo NO IN(’004’, ’007’ ,’013’)GO例15:检索以字母D开头的课程名。

USE XKGOSELECT * FROM CourseWHERE CouName LIKE ’D%’GO例16:检索以“制作”两字结尾的课程名。

USE XKGOSELECT * FROM CourseWHERE CouName LIKE ’%制作’GO例17:检索第2个字为“宝”的学生名字。

USE XKGOSELECT * FROM StudentWHERE Student LIKE ’_宝%’GO例18:检索不姓“刘”的学生信息。

USE XKGOSELECT * FROM StudentWHERE Student LIKE ’[^刘]%’GO例19:检索课程表中教师未定的课程名称和教师。

USE XKGOSELECT ’课程名称’=CouName, ’教师’=Teacher FROM Course WHERE Teacher IS NULLGO例20:检索报名人数少于15人的课程信息。

USE XKGOSELECT * FROM CourseWHERE WillNum<15GO例21:检索报名人数少于25人并且多于15人的课程信息。

USE XKGOSELECT * FROM CourseWHERE WillNum>15 AND WillNum<25GO例22:检索报名人数少于25人并且多于15人的课程信息,要求检索结果按照报名人数降序排序。

USE XKGOSELECT’课程名’= CouName ,’报名人数’= WillNum FROM Course WHERE WillNum BETWEE15 AND 25ORDER BY 报名人数DESEGO例23:检索报名人数多于25人或者小于15人的课程名字和报名人数,要求检索结果按照报名人数降序排序。

USE XKGOSELECT’课程名’= CouName ,’报名人数’= WillNum FROM Course WHERE WillNum NOT BETWEE15 AND 25ORDER BY 报名人数DESEGO例24:检索课程表中课程分类为“信息技术”的课程编码、课程名称、课程分类、报名人数,并计算平均报名人数。

USE XKGOSELECT CouNo AS’课程编码’, CouName AS ’课程名称’,Kind AS ’课程分类’, WillNum AS’报名人数’FROM CourseWHERE Kind=’信息技术’COMPUTE A VG(WillNum)GO例25:按类显示课程表的课程编码、课程名称、课程分类、报名人数,并计算每类课程的平均报名人数。

USE XKGOSELECT CouNo AS’课程编码’, CouName AS ’课程名称’,Kind AS ’课程分类’, WillNum AS’报名人数’FROM CourseORDER BY KindCOMPUTE A VG(WillNum)BY KindGO例26:按课程分类统计平均报名人数。

USE XKGOSELECT Kind AS ’课程分类’, A VG(WillNum)AS’每类平均报名人数’FROM CourseGROUP BY KindGO例27:检索“信息技术”类课程的平均报名人数。

USE XKGOSELECT Kind AS ’课程分类’, A VG(WillNum)AS’每类平均报名人数’FROM CourseGROUP BY KindHA VING Kind=’信息技术’GO例28:检索报名人数大于25人的课程分类和每类平均报名人数。

USE XKGOSELECT Kind AS ’课程分类’, A VG(WillNum)AS’每类平均报名人数’FROM CourseWHERE A VG(WillNum)>25GROUP BY KindGO例29:检索报名人数大于平均报名人数的课程编码、课程名称、报名人数。

USE XKGOSELECT’课程编码’= CouNo ,’课程名称’= CouName ,’报名人数’=WillNumFROM CourseWHERE WillNum>(SELECT A VG(WillNum)FROM Course)GO例30:从班级表中检索班级名,从系部表中检索系部名称,使用UNION运算符合并这两个检索结果。

USE XKGOSELECT ClassName FROM ClassUNIONSELECT DepartName FROM DepartmentGO例31:从班级表中检索班级名,从系部表中检索系部名称,使用UNION运算符合并这两个检索结果,改变列标题并按将序排列。

USE XKGOSELECT ClassName AS ’所有班名和所有系名’ FROM ClassUNIONSELECT DepartName FROM DepartmentORDER BY所有班名和所有系名DESCGO例32:检索“01电子商务”班的学生选修课程的情况,要求显示班级、学号、姓名、课程名、课程分类、学分、教师、上课时间、报名人数。

USE XKGOSELECT ClassName AS ’班级’ ,StuNo AS ’学号’, StuName AS ’姓名’ , CouName AS ’课程名称’, Kind AS ’课程分类’ , Credit AS ’学分’,Teacher AS ’教师’, SchoolTime AS ’上课时间’, WillNum AS’报名人数’FROM Class,Student,Course,StucouWHERE Class.ClassNo=Student. ClassNo ANDCourse.CouNo=StuCou. CouNo ANDStudent.StuNo= StuCou. .StuNo ANDClassName=’01电子商务’GO例33:检索学生信息和学生相应的班级信息。

USE XKGOSELECT *FROM Class,StudentWHERE Class . Classno = Student.ClassnoGO例34:检索学生信息和学生对应的班级信息,要求连接的列只显示一列。

USE XKGOSELECT Class .*,StuNo,StuName,PwdFROM Class,StudentWHERE Class.ClassNo=Student.ClassNoGO例35:检索计算机应用工程系承担的选修课程的学生报名信息(姓名、课程名称、授课教师)。

相关文档
最新文档