答案《关系数据库与SQL语言》第一章练习题
关系数据库语言SQL习题与答案

关系数据库语言SQL习题与答案一,选择题1,下面关于SQL语言的叙述中,哪一条是错误的( ).A.SQL既可作为联机交互环境中的查询语言又可嵌入到主语言中B.SQL没有数据控制功能C.使用SQL用户只能定义索引而不能引用索引D.使用SQL用户可以定义和检索视图2,SQL语言是( )A.高级语言B.编程语言C.结构化查询语言D.宿主语言3,在学生数据库中,用SQL语句列出的所有女生的姓名,应该对学生关系进行( )操作.A.选择B.连接C.投影D.选择和投影4,NULL是指( )A.0B.空格C.无任何值D.空字符串5,下列哪条语句不属于SQL数据操纵功能范围( )A.SELECTB. CREAT TABLEC.DELETED.INSERT6,用( )命令可建立唯一索引A.CREATE TABLEB.CREATE CLUSTERC.CREATE INDEXD.CREATE UNIQUE INDEX二,填空题1,SQL语言的使用方式有两种,一种是 ,另一种是2,在SQL查询中,WHERE子句的功能是 .3,视图是一个虚表,它是从的表.4,SQL语言的数据操纵功能包括 , , ,和 ,5,在SQL支持的关系数据库三级模式结构中,外模式对应于 ,模式对应于 ,内模式对应于 .6,在SELECT语句中,HAVING子句必须跟在子句后面.三,问题及操作题1,名词解释SQL模式 SQL数据库基本表视图相关子查询联接查询嵌入式SQL 游标2,对于教学数据库的三个基本表学生 S(S#,SNAME,AGE,SEX)学习 SC(S#,C#,GRADE)课程 C(C#,CNAME,TEACHER)试用SQL的查询语句表达下列查询:(1)检索LIU老师所授课程的课程号和课程名.(2)检索年龄大于23岁的男学生的学号和姓名.(3)检索至少选修LIU老师所授课程中一门课程的女学生姓名.( 4) 检索WANG同学不学的课程的课程号.(5)检索至少选修两门课程的学生学号.(6)检索全部学生都选修的课程的课程号与课程名.(7)检索选修课程包含LIU老师所授课的学生学号.3, 设有两个基本表R(A,B,C)和S(A,B,C)试用SQL查询语句表达下列关系代数表达式:(1)R∪S (2)R∩S (3)R-S (4)πA,B(R)πB,C(S)4, 试用SQL查询语句表达下列对教学数据库中三个基本表S,SC,C的查询:(1)统计有学生选修的课程门数.(2)求选修C4课程的学生的平均年龄.(3)求LIU老师所授课程的每门课程的学生平均成绩.(4)统计每门课程的学生选修人数(超过10人的课程才统计).要求输出课程号和选修人数, 查询结果按人数降序排列,若人数相同,按课程号升序排列.(5)检索学号比WANG同学大,而年龄比他小的学生姓名.(6)检索姓名以WANG打头的所有学生的姓名和年龄.(7)在SC中检索成绩为空值的学生学号和课程号.(8)求年龄大于女同学平均年龄的男学生姓名和年龄.5, 试用SQL更新语句表达对教学数据库中三个基本表S,SC,C的各个更新操作:(1)往基本表S中插入一个学生元组('S9','WU',18).(2)在基本表S中检索每一门课程成绩都大于等于80分的学生学号,姓名和性别, 并把检索到的值送往另一个已存在的基本表STUDENT(S#,SANME,SEX).(3)在基本表SC中删除尚无成绩的选课元组.(4)把WANG同学的学习选课和成绩全部删去(5)把选修MATHS课不及格的成绩全改为空值.(6)把低于总平均成绩的女同学成绩提高5%.(7)在基本表SC中修改C4课程的成绩,若成绩小于等于75分时提高5%, 若成绩大于75分时提高4%(用两个UPDATE语句实现).6, 在宿主语言的程序中使用SQL语句有哪些规定7,嵌入式SQL语句何时不必涉及到游标何时必须涉及到游标答案:一,1,B 2,C 3,D 4,C 5,B 6,D二,1,嵌入式交互式 2,选择3,基本表导出的表 4,数据查询数据更新数据插入数据删除5,视图或部分基本表基本表存储文件6,GROUP BY三,1,名词解释SQL模式:SQL模式是表和授权的静态定义.一个SQL模式定义为基本表的集合. 一个由模式名和模式拥有者的用户名或账号来确定,并包含模式中每一个元素(基本表,视图,索引等)的定义.SQL数据库:SQL(Structured Query Language),即'结构式查询语言',采用英语单词表示和结构式的语法规则. 一个SQL数据库是表的汇集,它用一个或多个SQL模式定义.基本表:在SQL中,把传统的关系模型中的关系模式称为基本表(Base Table). 基本表是实际存储在数据库中的表,对应一个关系.视图:在SQL中,把传统的关系模型中的子模式称为视图(View),视图是从若干基本表和(或)其他视图构造出来的表.相关子查询:在嵌套查询中出现的符合以下特征的子查询:子查询中查询条件依赖于外层查询中的某个值, 所以子查询的处理不只一次,要反复求值,以供外层查询使用.联接查询:查询时先对表进行笛卡尔积操作,然后再做等值联接,选择,投影等操作. 联接查询的效率比嵌套查询低.嵌入式SQL:嵌入在高级语言的程序中使用的SQL语言称为嵌入式SQL.游标:游标是与某一查询结果相联系的符号名,用于把集合操作转换成单记录处理方式.2,(1)检索LIU老师所授课程的课程号和课程名.SELECT C#,CNAMEFROM CWHERE TEACHER='LIU'(2)检索年龄大于23岁的男学生的学号和姓名.SELECT S#,SNAMEFROM SWHERE (AGE>23) AND (SEX='M')(3)检索至少选修LIU老师所授课程中一门课程的女学生姓名. SELECT SNAMEFROM SWHERE SEX='F' AND S# IN(SELECT S#FROM SCWHERE C# IN(SELECT C#FROM CWHERE TEACHER='LIU')NOTICE:有多种写法,比如联接查询写法:SELECT SNAMEFROM S,SC,CWHERE SEX='F' AND SC.S#=S.S#AND SC.C#=C.C#AND TEACHER='LIU'但上一种写法更好一些.(4)检索WANG同学不学的课程的课程号.SELECT C#FROM CWHERE C# NOT INFROM SCWHERE S# IN(SELECT S#FROM SWHERE SNAME='WANG'))(5)检索至少选修两门课程的学生学号.SELECT DISTINCT X.SNOFROM SC X,SC YWHERE X.SNO=Y.SNO AND ONotice:对表SC进行自连接,X,Y是SC的两个别名.(6)检索全部学生都选修的课程的课程号与课程名.SELECT C#,CNAMEFROM CWHERE NOT EXISTS(SELECT *FROM SWHERE S# NOT IN(SELECT *FROM SCWHERE SC.C#=C.C#))要从语义上分解:(1)选择课程的课程号与课程名,不存在不选这门课的同学.其中,"不选这门课的同学"可以表示为:FROM SWHERE S# NOT IN(SELECT *FROM SCWHERE SC.C#=C.C#)或者SELECT *FROM SWHERE NOT EXISTS(SELECT *FROM SCWHERE S.S#=C.S# ANDSC.C#=C.C# )(7)检索选修课程包含LIU老师所授课的学生学号. SELECT DISTINCT S#FROM SCWHERE C# IN(SELECT C#FROM CWHERE TEACHER='LIU'))3,(1)SELECT A,B,CFROM RUNIONSELECT A,B,CFROM S(2)SELECT A,B,CFROM RINTERSECTSELECT A,B,CFROM S(3)SELECT A,B,CFROM RWHERE NOT EXISTS(SELECT A,B,CFROM SWHERE R.A=S.A AND R.B=S.B AND R.C=S.C) (4)SELECT R.A,R.B,S.CFROM R,SWHERE R.B=S.B4, (1)统计有学生选修的课程门数. SELECT COUNT(DISTINCT C#) FROM SC (2)求选修C4课程的学生的平均年龄. SELECT AVG(AGE)FROM SWHERE S# IN(SELECT S#FROM SCWHERE C#='C4')或者,SELECT AVG(AGE)FROM S,SCWHERE S.S#=SC.S# AND C#='004'(3)求LIU老师所授课程的每门课程的学生平均成绩.SELECT CNAME,AVG(GRADE)FROM SC ,CWHERE SC.C#=C.C# AND TEACHER='LIU'GROUP BY C#(4)统计每门课程的学生选修人数(超过10人的课程才统计).要求输出课程号和选修人数, 查询结果按人数降序排列,若人数相同,按课程号升序排列.SELECT DISTINCT C#,COUNT(S#)FROM SCGROUP BY C#HAVING COUNT(S#)>10ORDER BY 2 DESC, C# ASC(5)检索学号比WANG同学大,而年龄比他小的学生姓名.SELECT X.SNAMEFROM S AS X, S AS YWHERE Y.SNAME='WANG' AND X.S#>Y.S# AND X.AGE(SELECT AVG(AGE) FROM S AS Y WHERE Y.SEX='女')5, (1)往基本表S中插入一个学生元组('S9','WU',18).INSERT INTO S(S#,SNAME,AGE) VALUES('59','WU',18)(2)在基本表S中检索每一门课程成绩都大于等于80分的学生学号,姓名和性别, 并把检索到的值送往另一个已存在的基本表STUDENT(S#,SANME,SEX).INSERT INTO STUDENT(S#,SNAME,SEX)SELECT S#,SNAME,SEXFROM S WHERE NOT EXISTS(SELECT * FROM SC WHEREGRADE<80 AND S.S#=SC.S#)(3)在基本表SC中删除尚无成绩的选课元组.DELETE FROM SCWHERE GRADE IS NULL(4)把WANG同学的学习选课和成绩全部删去.DELETE FROM SCWHERE S# IN(SELECT S#FROM SWHERE SNAME='WANG')(5)把选修MATHS课不及格的成绩全改为空值.UPDATE SCSET GRADE=NULLWHERE GRADE<60 AND C# IN(SELECT C#FROM CWHERE CNAME='MATHS')6)把低于总平均成绩的女同学成绩提高5%.UPDATE SCSET GRADE=GRADE*1.05WHERE GRADE<(SELECT AVG(GRADE) FROM SC) AND S# IN (SELECT S# FROM S WHERE SEX='F')(7)在基本表SC中修改C4课程的成绩,若成绩小于等于75分时提高5%, 若成绩大于75分时提高4%(用两个UPDATE语句实现).UPDATE SCSET GRADE=GRADE*1.05WHERE C#='C4' AND GRADE756, 在宿主语言的程序中使用SLQ语句有以下规定:(1)在程序中要区分SQL语句与宿主语言语句(2)允许嵌入的SQL语句引用宿主语言的程序变量(称为共享变量),但有两条规定:1)引用时,这些变量前必须加":"作为前缀标识,以示与数据库中变量有区别.2)这些变量由宿主语言的程序定义,并用SQL的DECLARE语句说明.(3)SQL的集合处理方式与宿主语言单记录处理方式之间要协调. 需要采用游标机制,把集合操作转换成单记录处理方式.7, (1)INSERT,DELETE,UPDATE语句,查询结果肯定是单元组时的SELECT语句, 都可直接嵌入在主程序中使用,不必涉及到游标.(2)当SELECT语句查询结果是多个元组时,此时宿主语言程序无法使用, 一定要用游标机制把多个元组一次一个地传送给宿主语言处理.。
习题参考答案 -《关系数据库与SQL Server (2019版)》

第1章关系数据库原理【课后习题】一、填空题1.数据库系统各类用户对表的各种操作请求(数据定义、查询、更新及各种控制)都是由一个复杂的软件来完成的,这个软件叫做__ DBMS(数据库管理系统)__。
2.DBMS(数据库管理系统)通常提供授权功能来控制不同的用户访问数据库中数据的权限,其目的是为了数据库的___安全性__。
3.在概念模型中,通常用实体联系图表示数据的结构,其三个主要的元素是__实体、属性、联系__。
4.学校中有若干个系和若干个教师,每个教师只能属于一个系,一个系可以有多名教师,系与教师的联系类型是__1:N __。
5.数据库系统中所支持的主要逻辑数据模型有层次模型、关系模型、__网状模型____和面向对象的模型。
6.联系两个表的关键字称为___外键___。
7.关系中主码的取值必须唯一且非空,这条规则是___实体___完整性规则。
8.关系模式是对关系结构的定义,是对关系__型___的描述。
9.对于1:1的联系,___每个实体的码_____均是该联系关系的候选键。
10.对于1:N的联系,关系的键是__ N端实体的码____。
11.对于M:N的联系,关系的键是___诸实体码的组合___。
12.关系完整性约束包括__实体__完整性、参照完整性和用户自定义完整性。
二、选择题1.数据库管理技术的发展阶段不包括(D)。
A.数据库系统管理阶段B.人工管理阶段C.文件系统管理阶段D.操作系统管理阶段2.数据处理进入数据库系统阶段,以下哪个不是这一阶段的优点(B)。
A.有很高的数据独立性B.数据不能共享C.数据整体结构化D.有完备的数据控制功能3.用于定义、撤销和修改数据库对象的语言是(A)。
A.DDL B.DM C.DC D.DEL 4.数据库系统的出现使信息系统以(A )为中心。
A.数据库B.用户C.软件D.硬件5.在现实世界中,事物的一般特性在信息世界中称为(C)。
A.实体B.实体键C.属性D.关系键6.实体联系图(ER图)是( B )。
sql语句练习题及答案

一在数据库 school 中建立student , sc, course 表。
学生表、课程表、选课表属于数据库 School ,其各自的数据结构如下:学生 Student (Sno,Sname,Ssex,Sage,Sdept)课程表 course(Cno,Cname,Cpno,Ccredit)学生选课 SC(Sno,Cno,Grade)二设定主码1 Student表的主码:sno2 Course表的主码:cno3 Sc表的主码:sno,cno1写出使用 Create Table 语句创建表 student , sc, course 的SQL语句create table student(sno char(6),sname varchar(8),ssex char(2),sage smallint,sdept varchar(15),primary key(sno));Create table course(Cno char(4) primary key,Cname varchar(20),Cpno char(4),Ccredit tinyint)create table sc(sno char(6),cno char(4),grade decimal(12,2),primary key(sno,cno));c2在student表中插入信息insert into studentvalues( ’4001’,’赵茵’,’男’,20,’SX’)insert into studentvalues( ’4002’,’杨华’,’女’,21,’JXJ’)Delete1 删除所有 JSJ 系的男生delete from Student where Sdept=’JSJ’ and Ssex=’男’;2 删除“数据库原理”的课的选课纪录delete from SC where Cno in (select Cno fromCourse where Cname=’数据库原理’);Update1 修改 0001 学生的系科为: JSJUpdate student set sdept=’JSJ’ where sno=’0001’2 把陈小明的年龄加1岁,性别改为女。
《数据库系统概论》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”的学生中成绩最高的学生的学号。
数据库第一章绪论习题及答案

数据库第一章绪论习题及答案B、RDBC、IMSD、MIS2、1970年,美国IBM公司的研究员E.F.Codd提出了数据库的( )A、层次模型B、网状模型C、关系模型D、实体联系模型3、CODASYL的DBTG提交的报告中的数据模型是()A、层次模型B、网状模型C、关系模型D、实体联系模型4、位于用户和数据库之间的一层数据管理软件是()A、DBSB、DBMSC、DBD、MIS5、数据库系统与文件系统的主要区别是()A、数据库系统复杂,而文件系统简单B、文件系统不能解决数据冗余和数据独立性问题,而数据库系统可以解决C、文件系统只能管理程序文件,而数据库系统能够管理各种类型的文件D、系统管理的数据量较少,而数据库系统可以管理庞大的数据量6、数据库的概念模型独立于()A、具体的机器和DBMSB、E-R图C、信息世界D、现实世界7、在数据库中,下列说法是不正确的()A、在数据库中,避免了一切数据的重复B、若系统是完全可以控制的,则系统可确保更新时的一致性C、数据库中的数据可以共享D、数据库减少了数据冗余8、在数据库中存储的是()A、数据B、数据模型C、数据以及数据之间的联系D、信息9、数据库中,数据的物理独立性是指()A、数据库与数据库管理系统的相互独立B、用户程序DBMS的相互独立C、用户的应用程序与存储在磁盘上数据库中的数据是相互独立的D、应用程序与数据库中数据的逻辑结构相互独立10、数据库的特点之一是数据的共享,严格的说,这里的数据共享是指()A、同一个应用中的多个程序共享一个数据集合B、多个用户、同一种语言共享数据C、多个用户共享一个数据文件C、多种应用、多种语言、多个用户相互覆盖地使用数据集合11、在数据库中,产生数据不一致的根本原因是()A、数据存储量太大B、没有严格保护数据C、未对数据进行完整性控制D、数据冗余12、数据库管理系统中用于定义和描述数据库逻辑结构的语言称为()A、数据库模式描述语言B、数据库子语言C、数据操纵语言D、数据结构语言13、在数据库的三级模式结构中,描述数据库中全体数据的全局逻辑结构和特征的是()A、外模式B、内模式C、存储模式D、模式14、数据库系统的数据独立性是指()A、不会因为数据的变化。
最新《数据库系统概论》课后习题及参考答案

课后作业习题《数据库系统概论》课程部分习题及参考答案第一章绪论(教材 41页)1.试述数据、数据库、数据库系统、数据库管理系统的概念。
数据:描述事物的符号记录称为数据。
数据的种类有文字、图形、图象、声音、正文等等。
数据与其语义是不可分的。
数据库:数据库是长期储存在计算机内、有组织的、可共享的数据集合。
数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。
数据库系统:数据库系统( DBS)是指在计算机系统中引入数据库后的系统构成。
数据库系统由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。
数据库管理系统:数据库管理系统 (DBMS)是位于用户与操作系统之间的一层数据管理软件。
用于科学地组织和存储数据、高效地获取和维护数据。
DBMS主要功能包括数据定义功能、数据操纵功能、数据库的运行管理功能、数据库的建立和维护功能。
2.使用数据库系统有什么好处?使用数据库系统的好处是由数据库管理系统的特点或优点决定的。
使用数据库系统的好处很多,例如可以大大提高应用开发的效率,方便用户的使用,减轻数据库系统管理人员维护的负担等。
为什么有这些好处,可以结合第 5题来回答。
使用数据库系统可以大大提高应用开发的效率。
因为在数据库系统中应用程序不必考虑数据的定义、存储和数据存取的具体路径,这些工作都由 DBMS来完成。
此外,当应用逻辑改变,数据的逻辑结构需要改变时,由于数据库系统提供了数据与程序之间的独立性。
数据逻辑结构的改变是 DBA的责任,开发人员不必修改应用程序,或者只需要修改很少的应用程序。
从而既简化了应用程序的编制,又大大减少了应用程序的维护和修改。
使用数据库系统可以减轻数据库系统管理人员维护系统的负担。
因为 DBMS在数据库建立、运用和维护时对数据库进行统一的管理和控制,包括数据的完整性、安全性,多用户并发控制,故障恢复等等都由DBMS执行。
数据库原理与 SQL 全部答案

LOG ON
(NAME = 'zygl_Log',
FILENAME ='E:\sql\zygl_Log.LDF' ,
SIZE = 3, FILEGROWTH = 1
)
GO
--4
ATLER DATABASE ZYGL
MODIFY FILE
( NAME =ZYGL_DAT,重量,仓库号,数量c)
零件(零件名,规格)
材料(材料编号,名称,仓库号,数量a)
仓库(仓库号,地点,面积,保管员)
产品-零件(产品名,零件名,组装日期b)
零件-材料(材料编号,零件名,生产日期a)
零件-仓库(零件名,仓库号,数量b)
3、一个图书馆理系统中有如下信息:
图书:书号、书名、数量、位置
第一章习题答案
DDCB DADD
2、某医院病房计算机管理中需要如下信息:
一个科室有多个病房、多个医生,一个病房只能属于一个科室,一个医生只属于一个科室,但可负责多个病人的诊治,一个病人的主管医生只有一个。
完成:设计该计算机管理系统的E-R图
4.假设某公司的业务规则如下:
(1)公司下设几个部门,如技术部、财务部、市场部等;
手机号码char(11),
工龄tinyint constraint ck_gl check(工龄>=0 and工龄<=35),
备注text
);
go
--3.工资表
create table工资表
(
员工号char(3) null references职员表(员工号),
基本工资decimal(7,2) ,
津贴decimal(5,2),
关系主键:(借书证号,书号)
关系数据库与SQL语言练习

第一章一、选择题在下列各题A),B),C),D)四个选项中选择一个正确的。
1,数据库(DB)、数据库系统(DBS)、数据库管理系统(DBMS)之间的关系是( C )。
A)DB包含DBS和DBMS B)DBMS包含DB和DBSC)DBS包含DB和DBMS D)没有任何关系2.数据库系统的核心是( B )。
A)数据模型 B)数据库管理系统C)数据库 D)数据库管理员3.数据独立性是数据库技术的重要特点之一。
所谓数据独立性是指( D )。
A)数据与程序独立存放B)不同的数据被存放在不同的文件中C)不同的数据只能被对应的应用程序所使用D)以上三种说法都不对4.用树形结构表示实体之间联系的模型是( C )。
A)关系模型 B)网状模型 C)层次模型 D)以上三个都是5.“商品”与“顾客”两个实体集之间联系一般是( D )。
A)一对一 B)一对多 C)多对一 D)多对多6.在E-R图中,.用来表示实体的图形是( A )。
A)矩形 B)椭圆形 C)菱形 D)三角形7.在数据库管理系统提供的数据语言中,负责数据的模式定义与数据的物理存取构建的是( A )。
A)数据定义语言 B)数据转换语言c)数据操纵语言 D)数据控制语言8.数据库系统的三级模式结构中,下列不属于三级模式的是( B )。
.A)内模式 B)抽象模式 c)外模式 D)概念模式9.在数据库管理系统提供的语言中,负责数据的完整性、安全性的定义与检查以及并发控制、故障恢复等功能的是( D )。
A)数据定义语言 B)数据转换语言c)数据操纵语言 D)数据控制语言10.下面关于数据系统叙述正确的是( B )。
A)数据库系统避免了一切冗余、’B)数据库系统减少了数据冗余c)数据库系统比文件能管理更多的数据D)、数据库系统中数据的一致性是指数据类型的一致11.下列叙述中,错误的是( C )。
A)数据库技术的根本目标是要解决数据共享的问题B)数据库设计是指设计一个能满足用户要求,性能良好的数据库c)数据库系统中,数据的物理结构必须与逻辑结构一致D)数据库系统是一个独立的系统,但是需要操作系统的支持12.在数据库管理系统提供的数据语言中,负责数据的查询及增、删、改等操作的是( D )。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《关系数据库与SQL语言》第一章练习题一、选择题1、实体完整性要求主属性不能取空值,这一点通常就是通过(B)A、定义外键来保证B、定义主键来保证C、用户定义完整性来保证D、关系系统自动保证2、建立在计算机外部设备上的结构化的、有联系的数据集合就是( A)。
A、数据库B、数据库管理系统C、数据结构D、数据文件3、英文缩写 DBA 就是代表( B)。
A、数据库管理系统B、数据库管理员C、数据定义语言D、数据操纵语言4、数据库设计中,在概念设计阶段可用 E — R 方法,其设计出的图称为( A)。
A、实体联系图B、实用概念图C、实体表示图D、实物示意图5、在概念设计阶段可用 E —R 图,其中“矩形框”表示实体,( D)表示实体间联系。
A、圆形框B、椭圆框C、箭头D、菱形框6、一个教师能开多门课程,一门课程有许多教师会开,实体课程与实体教师间就是( C)。
A、一对一的联系B、一对多的联系C、多对多的联系D、多对一的联系7、两个不同型实体间( B)。
A、只有一种联系B、可以有多种联系C、不能有联系D、只有多对多的联系8、不就是数据库系统中的数据模型就是( D)。
A、层次模型B、网状模型C、关系模型D、多用户型9、对于两实体间 m:n 联系,必须对“联系”单独建立( D),用来联系双方实体。
A、一个实体B、一个属性C、一个指针D、一个关系10、模式的逻辑子集通常称为( C)A .存储模式B .内模式C .外模式D .模式11、要保证数据库物理数据独立性,需要修改的就是 ( B ) 。
A、模式B、模式与内模式的映射C、模式与外模式的映射D、内模式12、下列四项中,不属于数据库特点的就是 ( C ) 。
A、数据共享B、数据完整性C、数据冗余很高D、数据独立性高13、数据库中存储的就是 ( D ) 。
A、数据B、数据模型C、数据之间的联系D、数据以及数据之间的联系14、表示数据库的概念模型一般使用 ( C) 。
A、用户活动图B、数据流图C、 E — R 图D、流程图15、现有关系表:学生(宿舍编号,宿舍地址,学号,姓名,性别,专业)的主键为:( B )A、宿舍编号B、学号C、宿舍地址,姓名D、宿舍编号,学号16、公司中有多个部门与多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从部门到职员的联系类型就是( D )A、多对多B、一对一C、多对一D、一对多17、现有如下关系:职工(职工号、姓名、性别、职务),部门(部门编号、部门名称、职工号、姓名、部门地址、电话)其中,部门关系中的外键就是( C )A、部门编号B、姓名C、职工号D、职工号,姓名18、在关系代数的专门关系运算中,从表中取出满足条件的属性的操作称为 B ;从表中选出满足某种条件的元组的操作称为 A 。
A.选择B.投影C.连接D.扫描19、关系数据库中的关键字就是指( D )。
A 能唯一决定关系的字段B 不可改动的专用保留字C 关键的很重要的字段D 能唯一标识元组的属性或属性集合20、根据关系模式的实体完整性规则,一个关系的“主键”( C )A、不能有两个B、不能成为另一个关系的外键C、不允许为空D、可以取值21、在数据库管理技术的发展过程中,经历了人工管理阶段、文件系统阶段与数据库系统阶段。
在这几个阶段中,数据独立性最高的就是 A 阶段。
A.数据库系统B.文件系统C.人工管理阶段D. 数据项管理22、在数据库中存储的就是 C。
A.数据B.数据模型C.数据及数据间的联系D.信息23、DBMS对数据库中数据查询、插入、修改与删除操作的功能称为C。
A 数据定义B 数据管理C 数据操作D 数据控制24、在数据库设计中用关系模型来表示实体与实体间联系,关系模型的结构就是( )。
A.层次结构B.二维表结构C.网络结构D.封装结构答案:B。
层次模型的结构就是层次结构,网状模型的结构就是网络结构,关系模型的结构就是二维表结构。
25、绝大多数数据库系统的总体结构都具有外模式、模式与内模式三级模式结构。
其中,描述数据库中全体数据的全局逻辑结构与特性的就是( )。
A.内模式B.子模式C.模式D.外模式答案:C。
模式也称逻辑模式,就是数据库中全体数据的逻辑结构与特征的描述,就是所有用户的公共数据视图。
在数据库的三级模式结构中,模式就是全局逻辑结构,就是数据库的中心与关键,它独立于数据库的其她层次。
26、数据模型通常由数据结构、数据操作与【】三部分组成。
A.数据管理B.数据应用C.数据收集D.完整性约束答案:D。
一般来讲,数据模型就是严格定义的一组概念的集合。
这些概念精确地描述了系统的静态特征、动态特征与完整性约束条件,因此,数据类型通常由数据结构、数据操作与完整性约束三部分组成。
(1)数据结构:数据结构就是所研究的对象类型的集合。
这些对象就是数据库的组成部分,它们包括两类,一类就是与数据类型、内容、性质有关的对象;一类就是与数据之间联系有关的对象。
数据结构就是对系统静态特性的描述。
(2)数据操作:数据操作就是指对数据库中各种对象的实例允许执行的操作与集合,包括操作及有关的操作规则。
数据库主要由检索与更新两大类操作。
数据操作就是对系统动态特性的描述。
(3)数据的约束条件:数据的约束条件就是一组完整性规则的集合。
完整性规则就是给定的数据模型中数据及其联系所具有的制约与依存规则,用以限制符合数据模型的数据库状态以及动态的变化,以保证数据的正确、有效、相容。
数据模型应该反映与规定本数据模型必须遵守的基本的通用的完整性约束条件。
例如,在关系模型中,任何关系必须满足实体完整性与参照完整性两个条件。
27、E-R模型向关系模型转换时,一个m:n的联系转换成一个关系模式时,该关系模式的键就是( )。
A.N端实体的键B.M端实体的键C.N端实体键与M端实体键组合D.重新选取其她属性答案:C。
E-R模型向关系模型转换的规则就是:一个m:n联系转换为一个关系模式。
与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。
28、在数据库逻辑设计中,当将E-R图转换为关系模式时,下面的做法哪一个就是不正确的?【】A.一个实体类型转换为一个关系模式B.一个联系类型转换为一个关系模式C.由实体类型转换成的关系模式的主键就是该实体类型的主键D.由联系类型转换成的关系模式的属性就是与该联系类型相关的诸实体类型的属性的全体答案:D。
由E-R图向关系模型转换,转换规则有如下3条:其中,(1)一个实体型转换为一个关系,实体的属性就就是该关系的属性,实体的码就就是该关系的码。
故A、C正确。
(2)一个联系也可转换为一个关系。
故B正确。
与该联系相连的各实体的码,以及联系的属性可转换为关系的属性。
该关系的码有以下几种情况:对于1:n联系,可以将1端实体的主码作为一个属性插入到n端的关系中去。
对于1:l联系,可以根据实际情况任选一方的关键字作为一个属性,插入到另一方的关系中。
对于m:n的联系,应该将关系转换为一个关系模式,并且将关联实体的关键字作为这个关系模式的属性。
即取所连接的各实体码的组合为关系的码。
故不就是每种联系类型在转换成联系类型时都如D中所述。
29、假设学生关系S(S#,SNAME,SEX),课程关系C(C#,CNAME),学生选课关系SC(S#,C#,GRADE)。
要查询选修“Computer”课的男生姓名,将涉及到关系()、A、) SB、) S,SCC、) C,SCD、) S,C,SC答案:D二、填空题(每题3分,共15分)1、数据库系统提供了两个方面的映像功能,这样就使得数据既具有独立性,又具有独立性。
答案:物理,逻辑2、关系中主键的取值非空就是完整性规则。
答案:实体3、数据库的逻辑模型设计阶段的任务就是将转换成关系模型答案:E-R图4、实体之间的联系按照联系方式的不同可分为、、。
答案:一对一联系(1:1),一对多联系(1:n),多对多联系(n:m)5、在关系模型中,实体以及实体间的联系都就是用来表示的。
答案:关系6、逻辑数据模型通常都就是由____、___与______三个要素组成。
答案:数据结构、数据上的操作、数据的约束条件7、数据库应用系统就是由构成答案:数据库、数据库管理系统、应用开发工具、应用系统、系统管理员与用户8、在关系中,元数就是指 ;基数就是指答案:列数(属性个数);行数(元组个数)9、DBMS就是指。
它就是位于与之间的一层管理软件。
答案:数据库管理系统用户操作系统三、问答题:1.假设某公司的业务规则如下:( 1 )公司下设几个部门,如技术部、财务部、市场部等。
( 2 )每个部门承担多个工程项目,每个工程项目属于一个部门。
( 3 )每个部门有多名职工,每一名职工只能属于一个部门。
( 4 )一个部门可能参与多个工程项目,且每个工程项目有多名职工参与施工。
根据职工在工程项目中完成的情况发放酬金。
( 5 )工程项目有工程号、工程名两个属性;部门有部门号、部门名称两个属性;职工有职工号、姓名、性别属性;问题: ○1根据上述规则设计 E-R 模型。
○2将 E-R 模型转换成关系数据模型,并指出每个关系的主键与外键。
答案:部门(部门号,部门名称)职工(职工号,姓名,性别,部门号)项目工程(工程号,工程名,部门号)参与(职工号,工程号,酬金)2、解释概念模型中以下术语:实体,实体型,实体集,属性,码,实体联系图(E-R图)答案:参考课本P8-103、某工厂生产若干产品,每种产品由不同的零件组成,有的零件可用在不同的产品上。
这些零件由不同的原材料制成,不同零件所用的材料可以相同。
这些零件按所属的不同产品分别放在仓库中,原材料按照类别放在若干仓库中。
请用E-R图画出此工厂产品、零件、材料、仓库的概念模型。
解析:对实体之间联系的语义描述有时不就是直截了当的,需要对现实世界的整体描述中进行分析,到处实体之间的某种联系。
就如本题中,“零件与仓库的联系”就要从以下描述中分析:“零件按所属的不同产品分别放在仓库中”。
因为一个产品由多种零件组成的,所以一个仓库中存放多种零件;反过来一种零件就是放在一个仓库还就是多个仓库中呢?因为一种零件可以用在多种产品上,这些零件按所属的不同产品分别放在仓库中,于就是知道一种零件可以放在多个仓库中,所以零件与仓库之间就是多对多的联系。
“材料与仓库的联系”则根据“原材料按照类别放在若干仓库”这句话就可以得出:一个仓库中放多种材料,而一种材料只放在一个仓库中,所以仓库与材料之间就是一对多的联系。
答案:。