数据库课后作业
数据库课后作业
第一章9 .定义并解释概念模型中以下术语:实体,实体型,实体集,属性,码,实体联系图( E 一 R 图)实体:客观存在并可以相互区分的事物叫实体。
实体型:具有相同属性的实体具有相同的特征和性质,用实体名及其属性名集合来抽象和刻画同类实体,称为实体型。
实体集:同型实体的集合称为实体集。
属性:实体所具有的某一特性,一个实体可由若干个属性来刻画。
码:惟一标识实体的属性集称为码。
实体联系图( E 一 R 图):提供了表示实体型、属性和联系的方法: · 实体型:用矩形表示,矩形框内写明实体名; · 属性:用椭圆形表示,并用无向边将其与相应的实体连接起来; · 联系:用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型( 1 : 1 , 1 : n 或 m : n )。
学校中有若干系,每个系有若干班级和教研室,每个教研室有若干教员,其中有的教授和副教授每人各带若干研究生;每个班有若干学生,每个学生选修若干课程,每门课可由若干学生选修。
请用 E 一 R 图画出此学校的概念模型。
13 .某工厂生产若干产品,每种产品由不同的零件组成,有的零件可用在不同的产品上。
这些零件由不同的原材料制成,不同零件所用的材料可以相同。
这些零件按所属的不同产品分别放在仓库中,原材料按照类别放在若干仓库中。
请用 E 一 R 图画出此工厂产品、零件、材料、仓库的概念模型。
18 .试述关系模型的概念,定义并解释以下术语: ( l )关系( 2)属性( 3 )域( 4 )元组 ( 5 )主码( 6 )分量( 7 )关系模式关系模型由关系数据结构、关系操作集合和关系完整性约束三部分组成。
在用户观点下,关系模型中数据的逻辑结构是一张二维表,它由行和列组成。
( l )关系:一个关系对应通常说的一张表; ( 2 )属性:表中的一列即为一个属性; ( 3 )域:属性的取值范围; ( 4 )元组:表中的一行即为一个元组; ( 5 )主码:表中的某个属性组,它可以惟一确定一个元组; ( 6 )分量:元组中的一个属性值; ( 7)关系模式:对关系的描述,一般表示为关系名(属性 1 ,属性 2 ,… ,属性 n )21.定义并解释以下术语:模式、外模式、内模式、 DDL 、 DML模式、外模式、内模式,亦称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。
(完整版)数据库课后习题及答案
第一章数据库系统概述选择题1实体-联系模型中,属性是指(C)A.客观存在的事物B.事物的具体描述C.事物的某一特征D.某一具体事件2对于现实世界中事物的特征,在E-R模型中使用(A)A属性描述B关键字描述C二维表格描述D实体描述3假设一个书店用这样一组属性描述图书(书号,书名,作者,出版社,出版日期),可以作为“键”的属性是(A)A书号B书名C作者D出版社4一名作家与他所出版过的书籍之间的联系类型是(B)A一对一B一对多C多对多D都不是5若无法确定哪个属性为某实体的键,则(A)A该实体没有键B必须增加一个属性作为该实体的键C取一个外关键字作为实体的键D该实体的所有属性构成键填空题1对于现实世界中事物的特征在E-R模型中使用属性进行描述2确定属性的两条基本原则是不可分和无关联3在描述实体集的所有属性中,可以唯一的标识每个实体的属性称为键4实体集之间联系的三种类型分别是1:1 、1:n 、和m:n5数据的完整性是指数据的正确性、有效性、相容性、和一致性简答题一、简述数据库的设计步骤答:1需求分析:对需要使用数据库系统来进行管理的现实世界中对象的业务流程、业务规则和所涉及的数据进行调查、分析和研究,充分理解现实世界中的实际问题和需求。
分析的策略:自下而上——静态需求、自上而下——动态需求2数据库概念设计:数据库概念设计是在需求分析的基础上,建立概念数据模型,用概念模型描述实际问题所涉及的数据及数据之间的联系。
3数据库逻辑设计:数据库逻辑设计是根据概念数据模型建立逻辑数据模型,逻辑数据模型是一种面向数据库系统的数据模型。
4数据库实现:依据关系模型,在数据库管理系统环境中建立数据库。
二、数据库的功能答:1提供数据定义语言,允许使用者建立新的数据库并建立数据的逻辑结构2提供数据查询语言3提供数据操纵语言4支持大量数据存储5控制并发访问三、数据库的特点答:1数据结构化。
2数据高度共享、低冗余度、易扩充3数据独立4数据由数据库管理系统统一管理和控制:(1)数据安全性(2)数据完整性(3)并发控制(4)数据库恢复第二章关系模型和关系数据库选择题1把E-R模型转换为关系模型时,A实体(“一”方)和B实体(“多”方)之间一对多联系在关系模型中是通过(A)来实现的A将A关系的关键字放入B关系中B建立新的关键字C建立新的联系D建立新的实体2关系S和关系R集合运算的结果中既包含S中元组也包含R中元组,但不包含重复元组,这种集合运算称为(A)A并运算B交运算C差运算D积运算3设有关系R1和R2,经过关系运算得到结果S,则S是一个(D)A字段B记录C数据库D关系4关系数据操作的基础是关系代数。
数据库课后习题参考答案与解析.doc
第1章数据概述一.选择题1.下列关于数据库管理系统的说法,错误的是CA.数据库管理系统与操作系统有关,操作系统的类型决定了能够运行的数据库管理系统的类型B.数据库管理系统对数据库文件的访问必须经过操作系统实现才能实现C.数据库应用程序可以不经过数据库管理系统而直接读取数据库文件D.数据库管理系统对用户隐藏了数据库文件的存放位置和文件名2.下列关于用文件管理数据的说法,错误的是DA.用文件管理数据,难以提供应用程序对数据的独立性B.当存储数据的文件名发生变化时,必须修改访问数据文件的应用程序C.用文件存储数据的方式难以实现数据访问的安全控制D.将相关的数据存储在一个文件中,有利于用户对数据进行分类,因此也可以加快用户操作数据的效率3.下列说法中,不属于数据库管理系统特征的是CA.提供了应用程序和数据的独立性B.所有的数据作为一个整体考虑,因此是相互关联的数据的集合C.用户访问数据时,需要知道存储数据的文件的物理信息D.能够保证数据库数据的可靠性,即使在存储数据的硬盘出现故障时,也能防止数据丢失5.在数据库系统中,数据库管理系统和操作系统之间的关系是DA.相互调用B.数据库管理系统调用操作系统C.操作系统调用数据库管理系统D.并发运行6.数据库系统的物理独立性是指DA.不会因为数据的变化而影响应用程序B.不会因为数据存储结构的变化而影响应用程序C.不会因为数据存储策略的变化而影响数据的存储结构D.不会因为数据逻辑结构的变化而影响应用程序7.数据库管理系统是数据库系统的核心,它负责有效地组织、存储和管理数据,它位于用户和操作系统之间,属于AA.系统软件B.工具软件C.应用软件D.数据软件8.数据库系统是由若干部分组成的。
下列不属于数据库系统组成部分的是B A.数据库B.操作系统C.应用程序D.数据库管理系统9.下列关于客户/服务器结构和文件服务器结构的描述,错误的是DA.客户/服务器结构将数据库存储在服务器端,文件服务器结构将数据存储在客户端B.客户/服务器结构返回给客户端的是处理后的结果数据,文件服务器结构返回给客户端的是包含客户所需数据的文件C.客户/服务器结构比文件服务器结构的网络开销小D.客户/服务器结构可以提供数据共享功能,而用文件服务器结构存储的数据不能共享数据库是相互关联的数据的集合,它用综合的方法组织数据,具有较小的数据冗余,可供多个用户共享,具有较高的数据独立性,具有安全控制机制,能够保证数据的安全、可靠,允许并发地使用数据库,能有效、及时地处理数据,并能保证数据的一致性和完整性。
数据库基础课后习题及答案
数据库基础课后习题及答案数据库基础课后习题及答案数据库是计算机科学中非常重要的一个概念,它用于存储和管理大量的数据。
在数据库基础课程中,学生通常需要完成一些习题来巩固所学的知识。
本文将介绍一些常见的数据库基础课后习题,并提供相应的答案。
一、选择题1. 数据库是指什么?A. 存储和管理数据的软件系统B. 存储和管理硬件设备的软件系统C. 存储和管理网络的软件系统D. 存储和管理操作系统的软件系统答案:A2. 数据库管理系统(DBMS)的主要功能是什么?A. 存储和管理数据B. 分析和处理数据C. 网络和通信D. 操作系统管理答案:A3. 下列哪个不属于数据库的特点?A. 数据共享B. 数据冗余C. 数据独立性D. 数据一致性答案:B4. 数据库中的数据是以什么形式存储的?A. 文件B. 表格C. 文本D. 图像答案:B5. 数据库中的主键是什么?A. 唯一标识一个记录的属性B. 存储在数据库中的所有数据C. 数据库中的表格D. 数据库中的索引答案:A二、填空题1. 数据库中的关系是指什么?关系是指数据之间的联系和关联。
2. 数据库中的SQL是什么意思?SQL是结构化查询语言(Structured Query Language)的缩写。
3. 数据库中的DDL是什么意思?DDL是数据定义语言(Data Definition Language)的缩写。
4. 数据库中的DML是什么意思?DML是数据操作语言(Data Manipulation Language)的缩写。
5. 数据库中的索引有什么作用?索引可以提高数据库的查询效率,加快数据检索的速度。
三、简答题1. 数据库的三级模式是什么?数据库的三级模式包括外模式、概念模式和内模式。
外模式是用户对数据库的直接接口,概念模式是数据库的全局逻辑结构,内模式是数据库在物理存储上的表示。
2. 数据库的ACID是什么意思?ACID是数据库事务的四个特性,包括原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability)。
数据库第三版课后习题答案
数据库第三版课后习题答案数据库第三版课后习题答案在学习数据库的过程中,课后习题是巩固知识的重要方式。
本文将为大家提供数据库第三版课后习题的答案,希望对大家的学习有所帮助。
第一章:数据库基础1. 数据库是什么?答:数据库是一个存储、管理和操作数据的集合。
它可以用来存储和检索大量数据,并提供数据的安全性和完整性。
2. 数据库管理系统(DBMS)的作用是什么?答:DBMS是一种软件,用于管理数据库。
它提供了对数据库的访问和操作,包括数据的增删改查、数据安全性和完整性的控制、数据备份和恢复等功能。
3. 数据库系统的组成部分有哪些?答:数据库系统由数据库、数据库管理系统和应用程序组成。
数据库是存储数据的仓库,数据库管理系统用于管理和操作数据库,应用程序用于访问和处理数据库中的数据。
4. 什么是关系型数据库?答:关系型数据库是一种基于关系模型的数据库。
它使用表格(称为关系)来组织和存储数据,每个表格包含行和列,行表示记录,列表示属性。
第二章:SQL基础1. SQL是什么?答:SQL(Structured Query Language)是一种用于管理关系型数据库的语言。
它可以用来创建、修改和查询数据库中的数据。
2. SQL语句分为哪几类?答:SQL语句分为数据定义语言(DDL)、数据操作语言(DML)、数据查询语言(DQL)和数据控制语言(DCL)四类。
3. 什么是DDL语句?举例说明。
答:DDL语句用于定义数据库的结构和模式,包括创建表格、修改表格结构、删除表格等。
例如,创建表格的语句如下:CREATE TABLE student (id INT PRIMARY KEY,name VARCHAR(50),age INT);4. 什么是DML语句?举例说明。
答:DML语句用于操作数据库中的数据,包括插入、更新和删除数据。
例如,插入数据的语句如下:INSERT INTO student (id, name, age) VALUES (1, 'Tom', 20);第三章:关系数据库设计1. 什么是关系数据库设计?答:关系数据库设计是指根据实际需求,设计数据库的结构和模式。
数据库课后作业)
第一章6.数据库管理系统的主要功能有哪些?答:数据库管理系统的主要功能有:1.数据定义功能。
DBMS提供定义语言,用户通过它可以方便的对数据库中的数据对象进行定义。
2.数据操纵功能。
DBMS还提供数据库操纵语言,用户可以使用DML操纵数据实现对数据库的基本操作,如查询、插入、删除和修改等。
3.数据库的运行管理。
数据库在建立、运用和维护石油数据库管理系统统一管理、统一控制,以保证数据的安全性、完整性、多用户对数据的并发使用及发生故障后的系统恢复。
4.数据库的建立和维护功能。
他宝库数据库出示数据的输入、转换功能,数据库的转储、恢复功能,数据库的重组织功能和性能监视、分析功能等。
1011.三个实体型之间的多对多的联系和三个实体型两两之间的三个多对多联系不等价,其语义不同。
三个实体型之间的多对多的联系:一个工人可以生产多个部件,而每个产品可以有多个工人生产的部件构成,每种部件可以由多个工人生产。
三个实体型两两之间的三个多对多联系:一个工人可生产多个部件,每种部件可以由多个工人生产;一个工人可以生产多个产品,每种产品可以由多个工人生产;每个产品可以有多种部件构成,每种部件可以用于生产多种产品。
12.13.18.试述关系模型的概念,丁宜斌解释下列术语:(1)关系(2)属性(3)域(4)元组(5)主码(6)分量(7)关系模式答:关系模型是建立在严格的数学概念的基础上的。
由关系数据结构、关系操作集合和关系完整性约束三部分组成。
关系:一张二维表即一个关系,它是域的笛卡尔积的子集,关系的一个分量必须是一个不可分的数据项。
属性:表中的一列即为一个属性,给每一个属性起一个名称即属性名。
域:属性的取值范围。
元组:表中的一列即为一个元组。
主码:表中的某个属性组,它可以为以确定一个元组。
分量:元组中的一个属性值。
关系模式:对关系的描述一般为:关系名(属性1,属性2,…,属性n)20.试述数据库系统三级模式结构,这种结构的优点是什么?答:数据库系统的三级模式结构是指数据库系统是由外模式、模式和内模式三级构成。
(完整版)数据库课后题参考答案
(完整版)数据库课后题参考答案学校有若干个系,每个系有各自的系号、系名和系主任;每个系有若干名教师和学生,教师有教师号、教师名和职称属性,每个教师可以担任若干门课程,一门课程只能由一位教师讲授,课程有课程号、课程名和学分,并参加多项项目,一个项目有多人合作,且责任轻重有个排名,项目有项目号、名称和负责人;学生有学号、姓名、年龄、性别,每个学生可以同时选修多门课程,选修有分数。
(1)请设计此学校的教学管理的E —R 模型。
(2)将E —R 模型转换为关系模型.2)系 (系号,系名,系主任)教师 (教师号,教师名,职称,系号) 学生(学号,姓名,年龄,性别,系号) 项目(项目号,名称,负责人)课程(课号,课程名,学分,教师号) 选修(课号,学号,分数) 负责(教师号,项目号,排名)3、设有下图所示的医院组织。
试画出其E —R 图及关系模式并用关系代数方法写出下面之查询公式:病房医生 病人图3-1 某医院人员组织关系框图 编号 名称所在位置主任姓名编号姓名患何种病 病房号编号 姓名年龄职称管辖病房号① 找出外科病房所有医生姓名; ② 找出管辖13号病房的主任姓名; ③ 找出管辖病员李维德的医生姓名。
关系模式:病房(编号、名称、所在位置、主任姓名)医生(编号、姓名、年龄、职称、管辖病房号) 病人(病号、姓名、患何种病、病房号)答案:就医病房号医生编号病人编号医生姓名位置负责①、''(外科位置医生姓名=∏σ() ②、'13'(=∏病房号主任姓名σ(病房))③、''(李维德病人姓名医生姓名=∏σ()第三章 习题一、单项选择题1、如果要在Windows 平台上运行DB2应用程序访问运行在UNIX 上的数据库服务器,需要在Windows 上安装那种产品?( )A DB2 企业服务器版B DB2 个人版C DB2 连接器D DB2 运行时客户端 答案:D2、下面那种产品不允许远程的客户端应用程序连接到该服务器?( ) A DB2 快速版 B DB2 个人版C DB2 企业服务器版D DB2 工作组服务器版 答案:B3、一个软件公司要开发一个需要访问DB2 for Linux 和DB2 for z/OS 的应用程序.下面那个产品最能满足这种需求?( )A DB2企业服务器版B DB2工作组服务器版C DB2连接器企业版D DB2通用开发版 答案:D4、下面那种产品不被认为是DB2服务器? ( ) A DB2快速版B DB2工作组服务器版C DB2个人版D DB2企业服务器版 答案:C5、下面那两种工具可以向数据库发出SQL语句进行查询? ()A 命令窗口B 命令中心C 命令行处理器D 命令处理器E 控制中心答案:B、C6、下面那种情况下,健康中心会发出报警:()A 表中的一行被删除B 运行LOAD工具C 当性能指标超过了预先定义的范围D 一条SQL语句由于语法错误而没有执行成功,并报错.答案:C二、填空题:1.DB2工具①可以用来在DB2中调度SQL脚本定期执行。
数据库课后习题完整答案
习题参考答案第1章习题参考答案一、选择题1. C2. B3. D4. C5. D6. A7. A8. B9. D、10. B 11. C 12. D 13. A 14. D 15. B二、填空题1. 数据库系统2. 关系3. 物理独立性4. 操作系统5. 数据库管理系统(DBMS)6. 多对多7. 独立性8. 完整性控制9. 逻辑独立性10. 关系模型11. 概念结构(逻辑)12. 树有向图二维表嵌套和递归13. 宿主语言(或主语言)14. 数据字典15. 单用户结构主从式结构分布式结构客户/服务器结构浏览器/服务器结构第2章习题参考答案一、选择题1. A2. C3. C4. B5. B6. C7. B8. D9. C 10. A 11. B 12. A 13. A 14. D 15. D二、填空题1. 选择(选取)2. 交3. 相容(或是同类关系)4. 并差笛卡尔积选择投影5. 并差交笛卡尔积6. 选择投影连接7. σf(R)8. 关系代数关系演算9. 属性10. 同质11. 参照完整性12. 系编号系名称,电话,办公地点13. 元组关系域关系14. 主键外部关系键15. R和S没有公共的属性三、简答7.σtno=’T1’(T)*TC*C)(1)∏cno,cn(σage>18∧Sex=’男’ (S))(2)∏sno,sn,dept(σtn=’李力’(T)*TC*C)(3)∏cno,cn,ct(σsno=’s1’(S)*SC*C)(4)∏cno,cn,score(σsn=’钱尔’(S)*SC*∏cno,cn(C)) (5)∏cno,cn,score(σtn=’刘伟’(T)*TC)(6)∏sn,cno(S*SC)÷∏cno(σsn=’李思’(S))*C)(7)∏cno,cn(C)-∏cno,cn(SC*((8)∏cno,cn,sno(C*SC)÷∏sno(S)σcno=’c1’∨cno=’c2’ (SC)) (9)∏sno,sn,cno(S*SC)*∏cno((10)∏sno,sn,cno(S*SC)÷∏cno(C)第3章习题参考答案一、填空题1.结构化查询语言(Structured Query Language)2.数据查询、数据定义、数据操纵、数据控制3.外模式、模式、内模式4.数据库、事务日志5.NULL/NOT NULL、UNIQUE约束、PRIMARY KEY约束、FOREIGNKEY约束、CHECK约束6.聚集索引、非聚集索引7.连接字段8.行数9.定义10.系统权限、对象权限11.基本表、视图12.(1)INSERT INTO S VALUES('990010','李国栋','男',19)(2)INSERT INTO S(No,Name) VALUES('990009', '陈平')(3)UPDATE S SET Name='陈平' WHERE No='990009'(4)DELETE FROM S WHERE No='990008'(5)DELETE FROM S WHERE Name LIKE '陈%'13.CHAR(8) NOT NULL14.o=o15.ALTER TABLE StudentADDSGrade CHAR(10)二、选择题1. B2. A3. C4. B5. C6. C7. B8. D9. A 10. D第4章习题参考答案一、选择题1. B2. B3. D4. B5. C6. D7. B8. D9. C 10. A二、填空题1. 超键(或超码)2. 正确完备3. 属性集X的闭包X +函数依赖集F的闭包F +4. 平凡的函数依赖自反性5. {AD→C} φ6. 2NF 3NF BCNF7. 无损连接保持函数依赖8. AB BC BD9. B→φB→B B→C B→BC10. B→C A→D D→C11. AB1NF12. AD3NF三、简答题1、2、3、4、5、解(1)根据F对属性分类:L类属性:BD。
数据库原理与应用课后作业参考答案
模块1 数据库理论基础1. 某医院病房计算机管理中心需要如下信息:科室:科名、科地址、科、医生姓名病房:病房号、床位号、所属科室名医生:姓名、职称、所属科室名、年龄、工作证号病人:病历号、姓名、性别、诊断、主管医生、病房号其中,一个科室有多个病房、多个医生,一个病房只能属于一个科室,一个医生只属于一个科室,但可负责多个病人的诊治,一个病人的主管医生只有一个。
请设计该计算机管理系统的E-R模型。
答:2. 一个图书馆借阅管理数据库要求提供下述服务:(1)可随时查询书库中现有书籍的品种、数量与寄存位置。
所有各类书籍都可由书号唯一标识。
(2)可随时查询书籍借还情况,包括借书人单位、姓名、借书证号、借书日期和还书日期。
咱们约定:任何人可借多种书,任何一种书可为多个人所借,借书证号具有唯一性。
(3)当需要时,可通过数据库中保留的出版社的电报编号、、及地址等信息向相应出版社增购有关书籍。
咱们约定,一个出版社可出版多种书籍,同一教材仅为一个出版社出版,出版社名具有唯一性。
请按照以上情况和假设设计知足需求的E-R模型。
答:模块3 表的操作一.填空题1.数字数据可分为整数型、精准数值型和近似数值型3种类型。
其中,精准数值型数据由由整数和小数两部份组成2.在创建表的命令语句中,要设置表字段属性为自动编号的关键字是IDENTITY。
3.SQL Server 2008中,按照表的用途可以分为4类,即系统表、用户表、已分区表和临时表。
4.若是表中记录的某一字段或字段组合能唯一标识记录,则称该字段或字段组合为_主键_。
5.创建数据库表的命令语句是create table。
二.选择题1.利用SQL语句修改表结构时,其语句是下面的( B )选项。
A. ALTER DATABASEB.ALTER TABLEC. UPDATE TABLED.UPATE DABASE2.下列对表的描述正确的是( C )。
A.在数据库中表用来表示关系模型中的实体B.表是对数据进行存储和操作的一种逻辑结构C.表是用来组织和存储数据的数据库对象D.表可以存储数据库的其他数据库对象3.在SQL Server 2008的数据类型中可以用来存储图片的数据类型是( B )A. binaryB.imageC.varcharD.int4.利用系统存储进程( C )可以查看表的行、大小和空间的统计信息。
数据库课后习题及答案
一、选择题【数据库系统的概述】1、数据库(DB)、数据系统(DBS)、数据管理系统(DBMS)之间关系是(C)A、DB包含DBS和DBMSB、DBMS包含DB和DBSC、DBS包含DB和DBMSD、没有任何关系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)A、数据定义语言B、数据转换语言C、数据控制语言D、数据操纵语言13、下列关于数据库的描述中,正确的是(A)A、数据库是一个结构化的数据结合B、数据库是一个关系C、数据库是一个DBF文件D、数据库是一个组文件14、在数据库的三级模式结构中,描述数据库中全体数据的全局逻辑结构和特征的是(D)A、外模式B、内模式C、存储模式D、模式15、(B)是存储在计算机内有结构的数据的集合。
数据库系统课后作业
DBS课后综合作业一、三级模式的理解1. 题目1) 谈谈你对数据库系统的三级模式结构的理解。
2. 要求1) 参考其他书籍2) 包含自己的观点3) 不少于500字,截至9月23日4) Email或单页纸提交,写清姓名和学号5) 在邮件主题中包含“作业一”及姓名、学号等内容,严格如“作业一某某某12345678”的格式二、关系代数操作1. 设有下列四个关系模式:1) 供应商表(供应商号,供应商名,供应商所在城市) S(SNO,SNAME,CITY)2) 零件表(零件号,零件名称,零件颜色,零件重量) P(PNO,PNAME,COLOR,WEIGHT)3) 项目表(项目号,项目名,项目所在城市) J(JNO,JNAME,CITY)4) 情况表(供应商号,零件号,项目号,供应数量) SPJ(SNO,PNO,JNO,QTY)2. 试用关系代数语言完成以下操作:1) 求供应项目J1零件的供应商号SNOπ(σJNO=’J1’(SPJ))SNO2) 求供应项目J1零件P1的供应商号SNOπ(σJNO=’J1’∧PNO=’P1’(SPJ))SNO3) 求供应项目J1红色零件的供应商号SNOπ(σCOLOR=’红色’(P)* σJNO=’J1’(SPJ))SNO4) 求没有使用天津供应商生产的红色零件的项目号JNOπ(P)- πPNO(σCITY=’天津’(S)* SPJ)PNO5) 求至少使用了S1供应商所供应的全部零件的项目号JNOπ(SPJ)÷πPNO(σSNO=’S1’(SPJ))PNO,JNO3. 要求1) Email或单页纸提交,写清姓名和学号2) 在邮件主题中包含“作业二”及姓名、学号等内容,严格如“作业二某某某12345678”的格式三、SQL对用户和权限的操作1. 要求1) 每小题首先要写出对应的SQL语句,然后再指出该语句可由哪个(或哪些)用户或角色来操作2) 如果通过Email提交,必须在邮件主题(Subject)中包含“数据库作业三”及姓名、学号等内容,如“数据库作业三张三00123456”字样,否则我Outlook的邮件自动分拣功能将有可能将你的作业邮件误删3) 如果通过纸面提交,也请注明姓名和学号4) 截至11月10日2. 根据以上要求完成下列各小题1) 在数据库系统中建立数据库用户zhang,并设置密码为YourPassword(1) SQL:CREATE USER zhang IDENTIFIED BY YourPassword(2) 操作者:DBA2) 将用户zhang的密码更改为MyPassword(1) SQL:ALTER USER zhang IDENTIFIED BY MyPassword(2) 操作者:DBA,zhang3) 使包括zhang在内的所有用户拥有登录数据库系统的权限(1) SQL:GRANT CONNECT TO PUBLIC(2) 操作者:DBA4) 定义拥有建表和查询权限的角色part1(1) SQL:GRANT CREATE TABLE, SELECT TO part1(2) 操作者:DBA5) 将角色part1授予zhang,并允许zhang将该角色传递给其他用户(1) SQL:GRANT part1 TO zhang WITH GRANT OPTION(2) 操作者:DBA6) 使zhang拥有修改表Student中Grade属性的权限(1) SQL:GRANT UPDA TE(Grade) ON TABLE student TO zhang(2) 操作者:DBA, 表的创建者7) 收回zhang操作表Student的所有权限(1) SQL:REVOKE ALL ON TABLE Student FROM zhang(2) 操作者:DBA, 表的创建者8) 收回zhang的建表权限(1) SQL:REVOKE CREA TE TABLE FROM zhang(2) 操作者:DBA9) 删除用户zhang(1) SQL:DROP USER zhang(2) 操作者:DBA四、关系的模式分解1. 已知1) 有关系模式UN(Sno,Cno,Dn,Dm,G)2) 其中Sno为学生编号3) Cno为课程编号4) Dn为学生所在系的名称5) Dm为系主任姓名6) G为学生选修对应课程的成绩2. 求解1) 该关系模式中的关系键、候选键和主键2) 分析该关系模式中的所有函数依赖关系3) 利用规范化理论对该关系模式进行规范化,写出过程3. 要求1) 可通过片页纸或Email提交,需注明“数据库作业四”及姓名、学号等内容2) 截至11月18日4. 答案1) 该关系模式中的关系键、候选键和主键该关系的关系键为(Sno,Cno),只有一个关系键,所以候选键也为(Sno,Cno),主键也为(Sno,Cno)。
数据库课后练习及答案
第一章:一、单选题1.以下的英文缩写中表示数据库管理系统的是( B)。
A. DB B.DBMS C.DBA D.DBS2.数据库管理系统、操作系统、应用软件的层次关系从核心到外围分别是(B )。
A. 数据库管理系统、操作系统、应用软件B. 操作系统、数据库管理系统、应用软件C. 数据库管理系统、应用软件、操作系统D. 操作系统、应用软件、数据库管理系统3.DBMS是(C )。
A. 操作系统的一部分B.一种编译程序 C.在操作系统支持下的系统软件 D.应用程序系统4.数据库系统提供给用户的接口是(A )。
A.数据库语言 B.过程化语言 C.宿主语言D.面向对象语5.(B )是按照一定的数据模型组织的,长期存储在计算机内,可为多个用户共享的数据的聚集。
A.数据库系统 B.数据库C.关系数据库D.数据库管理系统6. ( C)处于数据库系统的核心位置。
A.数据模型 B.数据库C.数据库管理系统D.数据库管理员7.( A)是数据库系统的基础。
A.数据模型B.数据库C.数据库管理系统D.数据库管理员8.( A)是数据库中全部数据的逻辑结构和特征的描述。
A.模式B.外模式 C.内模式 D.存储模式9.(C )是数据库物理结构和存储方式的描述。
A.模式 B.外模式 C.内模式D.概念模式10.( B)是用户可以看见和使用的局部数据的逻辑结构和特征的描述》 A.模式B.外模式C.内模式D.概念模式11.有了模式/内模式映像,可以保证数据和应用程序之间( B)。
A.逻辑独立性B.物理独立性C.数据一致性D.数据安全性12.数据管理技术发展阶段中,文件系统阶段与数据库系统阶段的主要区别之一是数据库系统( B)。
A.有专门的软件对数据进行管理B.采用一定的数据模型组织数据C.数据可长期保存D.数据可共享13.关系数据模型通常由3部分组成,它们是(B )。
A. 数据结构、数据通信、关系操作B. 数据结构、关系操作、完整性约束C. 数据通信、关系操作、完整性约束D. 数据结构、数据通信、完整性约束14.用户可以使用DML对数据库中的数据进行(A )操纵。
数据库课后习题参考答案
第1章数据概述一.选择题1.下列关于数据库管理系统的说法,错误的是CA.数据库管理系统与操作系统有关,操作系统的类型决定了能够运行的数据库管理系统的类型B.数据库管理系统对数据库文件的访问必须经过操作系统实现才能实现C.数据库应用程序可以不经过数据库管理系统而直接读取数据库文件D.数据库管理系统对用户隐藏了数据库文件的存放位置和文件名2.下列关于用文件管理数据的说法,错误的是DA.用文件管理数据,难以提供应用程序对数据的独立性B.当存储数据的文件名发生变化时,必须修改访问数据文件的应用程序C.用文件存储数据的方式难以实现数据访问的安全控制D.将相关的数据存储在一个文件中,有利于用户对数据进行分类,因此也可以加快用户操作数据的效率3.下列说法中,不属于数据库管理系统特征的是CA.提供了应用程序和数据的独立性B.所有的数据作为一个整体考虑,因此是相互关联的数据的集合C.用户访问数据时,需要知道存储数据的文件的物理信息D.能够保证数据库数据的可靠性,即使在存储数据的硬盘出现故障时,也能防止数据丢失5.在数据库系统中,数据库管理系统和操作系统之间的关系是DA.相互调用B.数据库管理系统调用操作系统C.操作系统调用数据库管理系统D.并发运行6.数据库系统的物理独立性是指DA.不会因为数据的变化而影响应用程序B.不会因为数据存储结构的变化而影响应用程序C.不会因为数据存储策略的变化而影响数据的存储结构D.不会因为数据逻辑结构的变化而影响应用程序7.数据库管理系统是数据库系统的核心,它负责有效地组织、存储和管理数据,它位于用户和操作系统之间,属于AA.系统软件B.工具软件C.应用软件D.数据软件8.数据库系统是由若干部分组成的。
下列不属于数据库系统组成部分的是B A.数据库B.操作系统C.应用程序D.数据库管理系统9.下列关于客户/服务器结构和文件服务器结构的描述,错误的是DA.客户/服务器结构将数据库存储在服务器端,文件服务器结构将数据存储在客户端B.客户/服务器结构返回给客户端的是处理后的结果数据,文件服务器结构返回给客户端的是包含客户所需数据的文件C.客户/服务器结构比文件服务器结构的网络开销小D.客户/服务器结构可以提供数据共享功能,而用文件服务器结构存储的数据不能共享数据库是相互关联的数据的集合,它用综合的方法组织数据,具有较小的数据冗余,可供多个用户共享,具有较高的数据独立性,具有安全控制机制,能够保证数据的安全、可靠,允许并发地使用数据库,能有效、及时地处理数据,并能保证数据的一致性和完整性。
数据库课后习题及答案
数据库课后习题及答案习题一1. 数据库处理技术经历了【人工管理、文件管理、数据库管理】以及分布式数据库管理四 个发展等段。
2. 在人工管理和文件管理阶段,程序设计【依赖于】数据表示。
3. 在文件管理阶段, 文件之间是相互 【独立】 的,在数据库管理阶段, 文件之间是相互 【联系】的。
4. 使用数据库程序设计时,只需要告诉数据库管理系统【做什么】 ,而不需要告诉他【怎 么做】。
5. 在【文件】系统中,数据没有独立的操作界面,在【数据】系统中,数据具有独立的操 作界面。
6. DBMS 具有【安全性控制、一致性控制、并发性控制】和【数据库恢复】等管理控制功7. 分布式数据库系统除了具有一般数据库系统的优点之外,还具有【系统的可靠性高、地 域范围广、数据量大、客户数多】等优点。
8. 在实体中能作为码的属性称为【主属性】9. 实体之间的联系类型有三种,分别是【10. 若实体 A 和 B 是 1 对多的联系,实体多】的联系。
11. 若实体 A 和 B 是 1 对多的联系,实体多】的联系。
记录型】 ,每个父子联系代表着 【 1 对多】联系。
13. 在非关系模型中操作记录的方式是 【过程】 式的,在关系模型中, 操作记录的方式是 【集 合】式的。
14. 关系中的每一行称为一个【元组】 ,每一列称为一个【属性】 。
15. 假定一个关系中由 n 个元组,则某个列的当前全部取值的个数最少为【 1】个,最多为【 n 】个。
16. 关系数据库系统具有【数据结构】单一、采用【集合运算】 、数据完全【独立】 、【数学】 理论支持等优点。
17. 在对象数据模型中,对象具有【封装】性、 【继承】性、和【多态】性。
18. 数据库管理系统的下层支持软件是【操作系统】 、上层软件是数据库应用【开发工具】 。
19. 数据库体系结构中包含的三级模式为【内模式、模式】和【外模式】三种。
20. 在数据库体系结构中,两级数据映像分别是指【模式、外模式】之间的数据映像与【模 式、内模式】之间的数据映像。
数据库课后作业答案(4)1
1.什么是数据库的安全性?答:数据库的安全性是指保护数据库以防止不合法的使用所造成的使用所造成的数据泄露、更改或破坏。
数据库的安全性就是指数据库中数据的保护措施,一般包括的登陆的身份验证管理、数据库的使用权限管理和数据库中对象的使用权限管理三种安全性保护措施8.(a).GRANT SELECTON TABLE 职工,部门TO 王明(b).GRANT INSERT,DELETEON TABLE 职工,部门TO 李勇(c).GRANT SELECTON TABLE 职工WHEN USER()=NAMETO ALL;(d).GRANT SELECT,UPDATE(工资)ON TABLE 职工TO 刘星(e).GRANT ALTER TABLEON TABLE 职工,部门TO 张新;(f).GRANT ALL PRIVILIGESON TABLE 职工,部门TO 周平WITH GRANT OPTION;(g).CREATE VIEW 部门工资 ASSELECT 部门.名称,MAX(工资),MIN(工资),AVG(工资)FROM 职工,部门WHERE 职工.部门号=部门.部门号GROUP BY 职工.部门号GRANT SELECT ON 部门工资TO 杨兰;9.把习题 8 中(1)---(7)的每一种情况,撤销各用户所授予的权力(a).REVOKE SELECTON TABLE 职工,部门FROM 王明(b).REVOKE INSERT,DELETEON TABLE 职工,部门FROM 李勇(c).REVOKE SELECTON TABLE 职工WHEN USER()=NAMEFROM ALL;(d).REVOKE SELECT,UPDATEON TABLE 职工FROM 刘星(e).REVOKE ALTER TABLEON TABLE 职工,部门FROM 张新;(f).REVOKE ALL PRIVILIGESON TABLE 职工,部门FROM 周平(g).REVOKE SELECTON TABLE 部门工资FROM 杨兰DROP VIEW 部门工资。
数据库课后作业
数据库大作业11.针对习题10的四个表,用SQL语言完成以下各项操作:(1)给学生表增加一属性Nation(民族),数据类型为Varchar(20);ALTER TABLE dbo.StudentADD Nation VarChar(20);SElECT*FROM dbo.Student;(2)删除学生表中新增的属性Nation;ALTER TABLE dbo.StudentDROP COLUMN Nation;SElECT*FROM dbo.Student;(3)向成绩表中插入记录(“2001110”,“3”,80);INSERT INTO dbo.GradeVALUES ('2001110','3',80);SElECT*FROM dbo.Grade;(4)将学号为“2001110”的学生的成绩修改为70分;UPDATE dbo.GradeSET Gmark= 70WHERE Sno='2001110';SElECT*FROM dbo.Grade;(5)删除学号为“2001110”的学生的成绩记录;DELETE FROM dbo.GradeWHERE Sno='2001110';SElECT*FROM dbo.Grade;(6)在学生表的Clno属性上创建一个名为IX_Class的索引,以班级号的升序排序;CREATE INDEX IX_CLASSON dbo.Student(Clno);SELECT*FROM dbo.Student;(7)删除IX_Class索引。
DROP INDEX Student.IX_CLASS;SELECT*FROM dbo.Student;12. 针对习题10的四个表,用SQL语言完成以下各项查询:(1)找出所有被学生选修了的课程号;SELECT DISTINCT CnoFROM Grade,StudentWHERE Grade.Sno=Student.Sno;(2)找出01311班女学生的个人信息;SELECT*FROM StudentWHERE Ssex='女'AND Clno='01311';(3)找出0311班和01312班的学生姓名、性别、出生年份;SELECT Sname,Ssex,(2014-Sage)AS'出生年份'FROM StudentWHERE Clno IN('01311','01312');(4)找出所有姓李的学生的个人信息;SELECT*FROM StudentWHERE Sname LIKE'李%';(5)找出学生李勇所在班级的学生人数;SELECT COUNT(*)AS'李勇班级人数'FROM StudentWHERE Clno IN(SELECT ClnoFROM StudentWHERE Sname='李勇');(6)找出课程名为操作系统的平均成绩、最高分、最低分;SELECT MAX(Gmark)AS'最高分',MIN(Gmark)AS'最低分',AVG(Gmark)AS'平均成绩'FROM Grade g,Course cWHERE o IN(SELECT oFROM CourseWHERE ame='操作系统');(7)找出选修了课程的学生人数;SELECT COUNT(DISTINCT Sno)AS'选修了课程的学生人数'FROM Grade;(8)找出选修了课程操作系统的学生学号和姓名;SELECT S.Sno,S.SnameFROM Student S,Grade GWHERE S.Sno IN(SELECT G.SnoFROM GradeWHERE o=(SELECT CnoFROM CourseWHERE Cname='操作系统'));(9)找出2000级计算机软件班的成绩为空的学生姓名。
数据库课后习题答案(全)
第1章数据库系统概述习题参考答案1.1 数据处理和数据库应用的例子:电话公司使用数据库存储客户基本信息、客户的每次通话信息以及雇员基本信息、雇员业绩信息等。
典型的数据处理包括电话收费、生成客户长途电话话单、计算雇员工资等图书馆使用数据库存储图书资料信息、读者基本信息、图书借阅信息等。
典型的数据处理包括新书登记、处理读者借还图书等税务局使用数据库存储纳税人(个人或公司)信息、纳税人缴纳税款信息等。
典型的数据处理包括纳税、退税处理、统计各类纳税人纳税情况等。
银行使用数据库存储客户基本信息、客户存贷款信息等。
典型的数据处理包括处理客户存取款等。
超市使用数据库存储商品的基本信息、会员客户基本信息、客户每次购物的详细清单。
典型的数据处理包括收银台记录客户每次购物的清单并计算应交货款。
1.2 DBMS是数据库管理系统的简称,是一种重要的程序设计系统。
它由一个相互关联的数据集合和一组访问这些数据的程序组成。
数据库是持久储存在计算机中、有组织的、可共享的大量数据的集合。
数据库中的数据按一定的数据模型组织、描述和存储,可以被各种用户共享,具有较小的冗余度、较高的数据独立性,并且易于扩展。
数据库系统由数据库、DBMS(及其开发工具)、应用系统和数据库管理员组成。
数据模型是一种形式机制,用于数据建模,描述数据、数据之间的联系、数据的语义、数据上的操作和数据的完整性约束条件。
数据库模式是数据库中使用数据模型对数据建模所产生设计结果。
对于关系数据库而言,数据库模式由一组关系模式构成。
数据字典是DBMS维护的一系列内部表,用来存放元数据。
所谓元数据是关于数据的数据。
1.3 DBMS提供如下功能:(1)数据定义:提供数据定义语言DDL,用于定义数据库中的数据对象和它们的结构。
(2)数据操纵:提供数据操纵语言DML,用于操纵数据,实现对数据库的基本操作(查询、插入、删除和修改)。
(3)事务管理和运行管理:统一管理数据、控制对数据的并发访问,保证数据的安全性、完整性,确保故障时数据库中数据不被破坏,并且能够恢复到一致状态。
数据库第5版书本作业全部答案
第一章:1、数据库的概念:P4数据库系统的概念: P59、数据模型的三个要素:数据结构,数据操作,完整性约束。
13、码:唯一标识实体的属性集。
16、模式:P29外模式:P29内模式:P2917、物理独立性:当数据库的存储结构改变时,对模式/内模式映象作相应改变,可以使模式保持不变,从而应用程序也不必改变,保证了数据与程序的物理独立性。
逻辑独立性:当数据库的模式改变时,对外模式/模式的映象作相应改变,可以使外模式保持不变,从而应用程序也不必改变,保证了数据与程序的逻辑独立性。
18、数据库系统的构成:数据库系统通常由数据库,数据库管理系统(及开发工具)、应用系统和数据库管理员构成。
第二章:1、关系模型的三个组成部分:关系数据结构、关系操作集合、关系完整性约束。
2、关系数据语言的分类:关系代数语言,关系演算语言,具有关系代数和关系演算双重特点的语言3、候选码:关系中能唯一标识一个元组的属性组。
主码:若候选码有多个,则选其中一个作为主码。
外码:关系模式R中属性或属性组X并非R的码,但X是另一个关系模式的码,则称X是R的外码。
(或者参照课本P50,定义2.5)5、答:实体完整性是指在基本表中,主属性不能取空值且取值唯一。
参照完整性是指在基本表中,外码可以是空值或者另一个关系主码的有效值。
6、(1)πSno(σJno=’J1’(SPJ))(2) πSno(σJno=’J1’∧ Pno=’P1’(SPJ))(3) πSno(σJno=’J1’∧ Color=’红’(SPJ∞P))(4)πJno(J)—πJno (σCity=’天津’∧ Color=’红’(S∞SPJ∞P)) (5)πJno,Pno(SPJ)÷πPno(σSno=’S1’(SPJ))第三章:4、建立S表Create table S(SNO CHAR(10) PRIMARY KEY,SNAME CHAR(10),STATUS CHAR(2),CITY CHAR(10));5、(1)select sname,cityFrom S;(2)select pname,color,weightFrom p;(3) select JnoFrom SPJWhere SNO=’S1’;(4)select p.pname,spj.qtyFrom p,spjWhere p.pno=spj.pno and spj.jno=’j2’;(5) select distinct pnoFrom spj,sWhere spj.sno=s.sno and city=’上海’;(6) select jnameFrom j,spj,sWhere j.jno=spj.jno and spj.sno=s.sno and s.city=’上海’;(7) select jnoFrom jWhere jno not in(select spj.jnoFrom spj,sWhere spj.sno=s.sno and s.city=’天津’);或者:select jnoFrom jWhere not exists(select spj.jnoFrom spj,sWhere spj.jno=j.jno and spj.sno=s.sno and s.city=’天津’);(8) update pSet color=’蓝’Where color=’红’;(9) update spjSet sno=’s3’Where sno=’s5’ and jno=’j4’ and pno=’p6’;(10) deleteFrom spjWhere sno=’s2’;deleteFrom sWhere sno=’s2’;(11)insert into spjValues(‘s2’,’j6’,’p4’,200)8、不是所有的视图都可以更新。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据库大作业11.针对习题10的四个表,用SQL语言完成以下各项操作:(1)给学生表增加一属性Nation(民族),数据类型为Varchar(20);ALTER TABLE dbo.StudentADD Nation VarChar(20);SElECT*FROM dbo.Student;(2)删除学生表中新增的属性Nation;ALTER TABLE dbo.StudentDROP COLUMN Nation;SElECT*FROM dbo.Student;(3)向成绩表中插入记录(“2001110”,“3”,80);INSERT INTO dbo.GradeVALUES ('2001110','3',80);SElECT*FROM dbo.Grade;(4)将学号为“2001110”的学生的成绩修改为70分;UPDATE dbo.GradeSET Gmark= 70WHERE Sno='2001110';SElECT*FROM dbo.Grade;(5)删除学号为“2001110”的学生的成绩记录;DELETE FROM dbo.GradeWHERE Sno='2001110';SElECT*FROM dbo.Grade;(6)在学生表的Clno属性上创建一个名为IX_Class的索引,以班级号的升序排序;CREATE INDEX IX_CLASSON dbo.Student(Clno);SELECT*FROM dbo.Student;(7)删除IX_Class索引。
DROP INDEX Student.IX_CLASS;SELECT*FROM dbo.Student;12. 针对习题10的四个表,用SQL语言完成以下各项查询:(1)找出所有被学生选修了的课程号;SELECT DISTINCT CnoFROM Grade,StudentWHERE Grade.Sno=Student.Sno;(2)找出01311班女学生的个人信息;SELECT*FROM StudentWHERE Ssex='女'AND Clno='01311';(3)找出0311班和01312班的学生姓名、性别、出生年份;SELECT Sname,Ssex,(2014-Sage)AS'出生年份'FROM StudentWHERE Clno IN('01311','01312');(4)找出所有姓李的学生的个人信息;SELECT*FROM StudentWHERE Sname LIKE'李%';(5)找出学生李勇所在班级的学生人数;SELECT COUNT(*)AS'李勇班级人数'FROM StudentWHERE Clno IN(SELECT ClnoFROM StudentWHERE Sname='李勇');(6)找出课程名为操作系统的平均成绩、最高分、最低分;SELECT MAX(Gmark)AS'最高分',MIN(Gmark)AS'最低分',AVG(Gmark)AS'平均成绩'FROM Grade g,Course cWHERE o IN(SELECT oFROM CourseWHERE ame='操作系统');(7)找出选修了课程的学生人数;SELECT COUNT(DISTINCT Sno)AS'选修了课程的学生人数'FROM Grade;(8)找出选修了课程操作系统的学生学号和姓名;SELECT S.Sno,S.SnameFROM Student S,Grade GWHERE S.Sno IN(SELECT G.SnoFROM GradeWHERE o=(SELECT CnoFROM CourseWHERE Cname='操作系统'));(9)找出2000级计算机软件班的成绩为空的学生姓名。
SELECT S.SnameFROM Student SWHERE S.Sno NOT IN(SELECT SnoFROM Grade)AND S.Clno=(SELECT ClnoFROM ClassWHERE Inyear='2000'AND Speciality ='计算机软件');13. 针对习题10的四个表,用SELECT的嵌套查询完成以下各项查询:(1)找出与李勇在同一个班级的学生信息;SELECT*FROM StudentWHERE Clno=(SELECT ClnoFROM StudentWHERE Sname='李勇')AND Sname NOT IN('李勇');(2)找出所有与李勇有相同选修课程的学生信息;SELECT*FROM StudentWHERE Sno IN(SELECT SnoFROM GradeWHERE o IN(SELECT CnoFROM GradeWHERE Sno=(SELECT SnoFROM StudentWHERE Sname='李勇')))AND Sname NOT IN('李勇');(3)找出年龄介于学生李勇与25岁之间的学生信息(已知李勇的年龄小于25岁);SELECT*FROM StudentWHERE Sage< 25 AND Sage>(SELECT SageFROM StudentWHERE Sname='李勇');(4)找出选修了课程操作系统的学生学号与姓名;SELECT Sno,SnameFROM StudentWHERE Sno IN(SELECT SnoFROM GradeWHERE Cno=(SELECT CnoFROM CourseWHERE Cname='操作系统'));(5)找出没有选修1号课程的所有学生姓名;SELECT SnameFROM StudentWHERE Sno NOT IN(SELECT SnoFROM GradeWHERE Cno='1');(6)找出选修了全部课程的学生姓名。
SELECT SnameFROM StudentWHERE NOT EXISTS(SELECT*FROM CourseWHERE NOT EXISTS(SELECT*FROM GradeWHERE Sno=Student.SnoAND Cno=o));14. 针对习题10的四个表,用SQL语言完成以下各项查询:(1)查询选修了3门以上的课程的学生学号及其成绩,并按成绩的降序排列;SELECT Sno,GmarkFROM GradeWHERE Cno= 3ORDER BY Gmark DESC;(2)查询全体学生信息,要求查询结果按班级号升序排列同一班级按年龄降序排列;SELECT*FROM StudentORDER BY Clno,Sage DESC;(3)求每个课程号及相应的选课人数;SELECT Cno,COUNT(Cno)AS'选修人数'FROM GradeGROUP BY Cno;(4)查询选修了3门以上课程的学生学号。
SELECT Sno,COUNT(Sno)AS'选修课程数'FROM GradeGROUP BY Sno HAVING(COUNT(Sno)>3);15. 针对习题10的四个表,用SQL语言完成以下各项操作:(1)将01311班的全体学生的成绩置零;UPDATE GradeSET Gmark= 0WHERE Sno IN(SELECT SnoFROM StudentWHERE Clno='01311');(2)删除2001级计算机软件的全体学生的选课记录;DELETE FROM GradeWHERE Sno IN(SELECT SnoFROM StudentWHERE Clno=(SELECT ClnoFROM ClassWHERE Inyear='2001'AND Speciality='计算机软件'));(3)学生李勇已退学,从数据库中删除有关他的记录;UPDATE ClassSET Monitor=NULLWHERE Clno=(SELECT ClnoFROM StudentWHERE Sname='李勇')DELETE FROM GradeWHERE Sno=(SELECT SnoFROM StudentWHERE Sname='李勇')DELETE FROM StudentWHERE Sname='李勇';(4)对每个班,求学生的平均年龄,并把结果存入数据库。
CREATE VIEW V_SagASSELECT Clno,AVG(Sage)AS'Sag'FROM StudentGROUP BY Clno;16.视图操作:(1)建立01311班选修了1号课程的学生视图Stu_01311_1;CREATE VIEW Stu_01311_1AS SELECT*FROM StudentWHERE Sno IN(SELECT SnoFROM GradeWHERE Cno= 1)AND Clno='01311';(2)建立01311班选修了1号课程并且不及格的学生视图Stu_01311_2;CREATE VIEW Stu_01311_2AS SELECT*FROM StudentWHERE Sno IN(SELECT SnoFROM GradeWHERE Cno= 1 AND Gmark< 60)AND Clno='01311';(3)建立视图Stu_year,由学生学号、姓名、出生年份组成;CREATE VIEW Stu_yearAS SELECT Sno AS'学号',Sname AS'姓名',(2014-Sage)AS'出生年份' FROM Student;(4)查询1990年以后出生的学生姓名;SELECT SnameFROM dbo.Stu_yearWHERE'出生年份'>'1990';(5)查询01311班选修了1号课程并且成绩不及格的学生的学号、姓名、出生年份。