数据库习题作业

合集下载

数据库练习题

数据库练习题

一、关系运算1、设有两个关系R(A,B)和S(B,C),请写出与下面关系代数表达式等价的SQL语句。

πB(R) -πB(σc=`C56`(S))2、已知关系R、S如下所示,以表的形式给出下列运算结果。

(1)σX=Z(R ╳ S)已知关系模式如下:学生:S(Sno,Sname,Ssex,Sage,Sdept) 对应学生的学号,姓名,性别,年龄,系;课程:C(Cno,Cname,Tname) 对应课程的课程号,课程名,授课教师名字;学生选课:SC(Sno,Cno,Grade)对应学生选修课程的成绩。

3、检索至少选修两门课程的学生学号及姓名。

4、查询王力同学不学课程的课程名。

5、查询既选修了课程1也选修了课程2的学生学号。

6、检索全部学生都选修的课程的课程号与课程名。

7、查询刘宏老师所授课程的每门课程的学生平均成绩。

8、为“三建”工程项目建立一个供应情况视图,包括SNO、PNO、QTY。

9、试修改Student表结构,实现学生性别取值为‘男’,‘女’的约束。

答案:1、SELECT BFROM RWHERE B NOT IN(SELECT BFROM SWHERE C=`C56`);2、(bebb,cccc) ,(ccc)3、检索至少选修两门课程的学生学号及姓名。

select sno,sname from student where sno in(select sno from scgroup by snohaving count(*)>=2);4、查询王力同学不学课程的课程名。

SELECT CNAME FROM CWHERE NOT EXISTS(SELECT*FROM SCWHERE O=O AND SNO =(SELECT SNO FROM STUDENT WHERE SNAME=’王力’));5、查询既选修了课程1也选修了课程2的学生学号。

SELECT SnoFROM SCWHERE Cno='1' AND Sno IN(SELECT SnoFROM SCWHERE Cno='2');6、检索全部学生都选修的课程的课程号与课程名。

数据库练习题

数据库练习题

单选题1、以下关于数据库实例的表述哪个是不正确的()A、数据库实例包括内存结构B、数据库实例包括进程结构C、数据库实例包括存储结构D、专享服务器模式下一个实例对应一个数据库2、以下表述不正确的是()A、在共享服务器环境中,多个客户机用户共享服务器进程。

B、在共享服务器环境中,PGA中具有独立的用户全局区。

C、每个服务器进程都有独立的 PGA。

D、在专用服务器环境中,连接到数据库实例的每个用户都有单独的服务器进程。

3、用户进程和 Oracle DB 实例之间的通信路径是()。

A、连接B、会话C、通信D、访问4、用于在运行时存放数据字典的内存区域是()A、共享池B、数据库缓冲区高速缓存C、重做日志缓冲区D、大池5、以下对于重做日志缓冲区错误的表述是()A、SGA 中的循环缓冲区B、存放对数据库所做更改的相关信息C、包含重做条目,重做条目中具有用于重做 DML 和 DDL 之类操作所做更改的信息D、重做日志缓冲区中产生的重做条目实时写入重做日志文件6、以下对数据缓冲区高速缓存错误的表述是()A、数据库缓冲区高速缓存是 SGA 的一部分。

B、用于存放从数据文件中读取的块映像或动态构造的块映像,以便符合读一致性模型要求。

C、并行连接到实例的所有用户共享对数据库缓冲区高速缓存的访问。

D、该区域存储数据最小的单位是 2KB。

7、在数据库备份和恢复是会使用到的内存区域是()A、共享池B、重做日志缓冲区C、大型池D、JAVA池8、包含服务器进程或后台进程的数据及控制信息的内存区域称为:()A、共享池B、PGAC、缓冲区高速缓存D、用户会话数据9、从数据文件读取到数据库缓冲区高速缓存中的是什么?()A、行B、更改C、块D、SQL10、Oracle数据库进程体系不包括()A、用户进程B、数据库进程C、守护程序/应用程序进程D、监控进程11、服务器进程是用来()A、处理连接到实例的用户进程的请求。

B、等待网络中连接数据库的请求。

数据库练习题

数据库练习题

数据库练习题2.数据库在磁盘上的基本组织形式是[B ] A.DB B.⽂件 C.⼆维表 D.系统⽬录3.在关系模型中,起导航数据作⽤的是[B ] A.指针 B.关键码 C.DD D.索引4.查询优化策略中,正确的策略是[D ] A.尽可能早地执⾏笛卡尔积操作B.尽可能早地执⾏并操作C.尽可能早地执⾏差操作D.尽可能早地执⾏选择操作5.SQL中,“DELETE FROM 表名”表⽰[A ] A.从基本表中删除所有元组B.从基本表中删除所有属性C.从数据库中撤消这个基本表D.从基本表中删除重复元组6.设关系模式R(A,B,C),F是R上成⽴的FD集,F={A→B,C→B},ρ={AB,AC}是R的⼀个分解,那么分解ρ[C ] A.保持函数依赖集F B.丢失了A→BC.丢失了C→B D.丢失了B→C8.在关系数据库设计中,⼦模式设计是在__________阶段进⾏。

[B ] A.物理设计 B.逻辑设计 C.概念设计 D.程序设计10.在DB技术,未提交的随后被撤消了的数据,称为[D ] A.报废的数据 B.过时的数据 C.撤消的数据 D.脏数据1. 关系数据库管理系统都是基于( A )理论。

A. Codd的数据关系模型B. 数据结构C. 计算机操纵系统D. 信息管理2. 元组关系演算表达式{t| R(t)∧S(t)}表达的是(D )A. R∪SB. R∩SC. R-SD. S-R5. 语句 delete from sc 表明( A )A. 删除sc中的全部记录B. 删除基本表scC. 删除基本表sc中的列数据D. 删除基本表sc中的部分⾏7. 关系笛卡尔积运算记号R×S,( D )A. R为关系名,S为属性名B. R和S均为属性名C. R为属性名,S为关系名D. R和S均为关系名9. 下列说法中不正确的是(C )。

A. 任何⼀个包含两个属性的关系模式⼀定满⾜3NFB. 任何⼀个包含两个属性的关系模式⼀定满⾜BCNFC. 任何⼀个包含三个属性的关系模式⼀定满⾜3NFD. 任何⼀个关系模式都⼀定有码10. 在下列基本表的定义中,数值5表⽰( C )CREATE TABLE student (Sno char(5) not null unique,Sname char(2));A. 表中有5条记录B. 表中有5列C. 表中字符串Sno 的长度D. 表格的⼤⼩11. 在视图上不能完成的操作是( C )A. 更新视图B. 查询C. 在视图上定义新的基本表D. 在视图上定义新视图12. 设有关系模式R(A,B,C,D),F是R上成⽴的函数依赖集,F={B→C,C→D},则属性C的闭包C+为( C )A.BCDB.BDC.CDD.BC1. DB、DBMS和DBS三者之间的关系是(B)。

数据库第五章作业

数据库第五章作业

第五、六章练习题一、选择题1、在关系数据库设计中,子模式设计是在__________阶段进行。

[ B]A.物理设计B.逻辑设计C.概念设计D.程序设计2、设有关系R(A,B,C)的值如下:A B C2 2 32 3 43 3 5下列叙述正确的是(B)A.函数依赖A→B在上述关系中成立B.函数依赖BC→A在上述关系中成立C.函数依赖B→A在上述关系中成立D.函数依赖A→BC在上述关系中成立3、数据库设计阶段分为(D )A. 物理设计阶段、逻辑设计阶段、编程和调试阶段B. 模型设计阶段、程序设计阶段和运行阶段C. 方案设计阶段、总体设计阶段、个别设计和编程阶段D. 概念设计阶段、逻辑设计阶段、物理设计阶段、实施和调试阶段4、下列说法中不正确的是(C)。

A. 任何一个包含两个属性的关系模式一定满足3NFB. 任何一个包含两个属性的关系模式一定满足BCNFC. 任何一个包含三个属性的关系模式一定满足3NFD. 任何一个关系模式都一定有码5、设有关系模式R(A,B,C,D),F是R上成立的函数依赖集,F={B→C,C→D},则属性C的闭包C+为( C )A.BCDB.BDC.CDD.BC6、在数据库设计中,将ER图转换成关系数据模型的过程属于( B )A.需求分析阶段B.逻辑设计阶段C.概念设计阶段D.物理设计阶段7、下述哪一条不是由于关系模式设计不当而引起的?(B)A) 数据冗余B) 丢失修改C) 插入异常D) 更新异常8、下面关于函数依赖的叙述中,不正确的是(B)A) 若X→Y,X→Z,则X→YZB) 若XY→Z,则X→Z,Y→ZC) 若X→Y,Y→Z,则X→ZD) 若X→Y,Y′ Y,则X→Y′9、设U是所有属性的集合,X、Y、Z都是U的子集,且Z=U-X-Y。

下面关于多值依赖的叙述中,不正确的是(C)A) 若X→→Y,则X→→ZB) 若X→Y,则X→→YC) 若X→→Y,且Y′⊂Y,则X→→Y′D) 若Z=Φ,则X→→Y第(10)至(12)题基于以下的叙述:有关系模式A(C,T,H,R,S),基中各属性的含义是:C:课程T:教员H:上课时间R:教室S:学生根据语义有如下函数依赖集:F={C→T,(H,R)→C,(H,T)→R,(H,S)→R}10、关系模式A的码是(D)A) C B) (H,R)C)(H,T)D)(H,S)11、关系模式A的规范化程度最高达到(B)A) 1NF B) 2NF C) 3NF D) BCNF12、现将关系模式A分解为两个关系模式A1(C,T),A2(H,R,S),则其中A1的规范化程度达到(D)A) 1NF B) 2NF C) 3NF D) BCNF13、下述哪一条不属于概念模型应具备的性质?(D)A) 有丰富的语义表达能力B) 易于交流和理解C) 易于变动D) 在计算机中实现的效率高14、在下面列出的条目中,哪个(些)是当前应用开发工具的发展趋势?(D)Ⅰ.采用三层或多层Client/Server结构Ⅱ.支持Web应用Ⅲ.支持开放的、构件式的分布式计算环境A) Ⅰ和ⅡB) 只有ⅡC) 只有ⅢD) 都是15、下面所列的工具中,不能用于数据库应用系统界面开发的工具是(C)A) Visual Basic B) DelphiC) PowerDesigner D) PowerBuilder16、设关系模式R{A,B,C,D,E},其上函数依赖集F={AB→C,DC→E,D→B},则可导出的函数依赖是(A)。

数据库全部习题

数据库全部习题

第一章绪论练习一、单项选择题1.在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。

在这几个阶段中,数据独立性最高的是( A )阶段。

A 数据库系统B 文件系统C 人工管理D 数据项管理2 数据库系统与文件系统的主要区别是( D )。

A 数据库系统复杂,而文件系统简单B 文件系统不能解决数据冗余和数据独立性问题,而数据库系统可以解决C 文件系统只能管理程序文件,而数据库系统能够管理各种类型的文件D 文件系统管理的数据量较少,而数据库系统可以管理庞大的数据量3 数据库的概念模型独立于( A )。

A 具体的机器和DBMSB E-R图C 信息世界 D现实世界4 数据库是在计算机系统中按照一定的数据模型组织、存储和应用的B①,支持数据库各种操作的软件系统叫做B②,由计算机、操作系统、DBMS、数据库、应用程序及用户等组成的一个整体叫做③B。

① A 文件的集合 B 数据的集合C命令的集合 D 程序的集合② A 命令系统 B 数据库管理系统C 数据库系统D 操作系统③ A 命令系统 B 数据库系统C 软件系统D 数据库管理系统5 数据库具有B①、最小的A②和较高的C③。

① A 程序结构化 B 数据结构化C 程序标准化D 数据模块化② A 冗余度 B 存储量 C 完整性 D 有效性③ A 程序与数据可靠性 B 程序与数据完整性C 程序与数据独立性D 程序与数据一致性6 在数据库中存储的是( C )。

A 数据B 数据模型C 数据及数据之间的联系D 信息7 数据库中,数据的物理独立性是指( C )。

A数据库与数据库管理系统的相互独立性B 用户程序与DBMS的相互独立性C 用户的应用程序与存储在磁盘上数据库中的数据是相互独立的D 应用程序与数据库中的逻辑结构相互独立8 数据库的特点之一是数据的共享,严格的讲。

这里的数据共享是指( D )。

A 同一个应用中的多个程序共享一个数据集合B 多个用户、同一种语言共享数据C 多个用户共享一个数据文件D 多种应用、多种语言、多个用户相互覆盖地使用数据集合9 数据库技术中采用分级方法将数据库的结构划分为多个层次,是为了提高数据库的①C和②A。

数据库考试习题及答案

数据库考试习题及答案

第一章习题一、判断题1.安装Microsoft SQL Server 2005 企业版对操作系统的最低要求可以是Microsoft Windows XP Professional SP2。

( 错)2.每一个服务器必须属于一个服务器组。

一个服务器组可以包含0个、一个或多个服务器。

(对)二、填空题3. MS SQL Server提供多个图形化工具,其中用来启动、停止和暂停SQL Server 服务的图形化工具称为SQLServer 配置管理器。

三、选择题4. 下列系统数据库中,(D)数据库不允许进行备份操作。

A. masterB. msdbC. modelD. Tempdb5. 下列关于SQL Server 2005实例的说法中,正确的是(C)。

A.不同版本的默认实例数可能不一样多B.不同版本的命名实例数一定一样多C.不同版本的默认实例只有一个,命名实例数不一样多D.不同版本的命名实例只有一个,默认实例数不一样多6. 下列(C)数据库是SQL Server 2005在创建数据库时可以使用的模板。

A. masterB. msdbC. modelD.mssqlsystemresoure7. 默认情况下,SQL Server 2005的系统数据库有(B)。

A. 1个B.5个C. 4个D.6个8. 在一台计算机上能安装(A)个默认实例。

A. 1B. 509. 访问默认实例使用(B)作为实例名。

A. 计算机名B. MSSQLSERVER10. 下列叙述中正确的是(A)。

A. SQL SERVER实例是提供服务的, 所以一个SQL Server实例称为一个数据库服务器B. SQL SERVER实例也叫做数据库引擎C. 若计算机上安装多个SQL SERVER实例,则它们可以相互管理11. SQL SERVER 2005实例主要提供哪些服务?(BCD)//全文搜索、报表服务、通知服务A. 查询服务B. 数据库服务C. 集成服务D. 分析服务12. 一台计算机的计算机名为computer,若在该计算机上打开配置管理器看到如图1所示内容,则说明本机上已安装3个实例,其实例名分别是(BCD)A. computerB. MSSQLSERVERC. computer\SQLEXPRESSD. computer\SERVER13. 连接数据库服务器时需要提供哪些信息?(A或者B)A. 要连接的服务器名B. 身份验证信息C. 连接协议信息14. 能否将他人计算机上运行的实例注册到你的SSMS中?(A)A. 不能B. 能四、简答题15. 什么是SQL Server 2005实例,其主要功能有哪些?答:SQL Server 2005 的实例实际上就是虚拟的SQL Server 服务器。

(完整版)数据库练习题及答案解析

(完整版)数据库练习题及答案解析

第一章习题一、单项选择题1 •数据库(DB),数据库系统(DBS)和数据库管理系统(DBMS )之间的关系是(A )。

A. DBS 包括DB 和DBMSB. DBMS 包括DB 和DBSC. DB包括DBS和DBMSD. DBS就是DB,也就是DBMS2. 下面列出的数据库管理技术发展的三个阶段中,没有专门的软件对数据进行管理的是(D )。

I •人工管理阶段II.文件系统阶段III •数据库阶段A. I 和IIB. 只有IIC. II 和IIID. 只有I3. 下列四项中,不属于数据库系统特点的是(C )。

A. 数据共享B. 数据完整性C. 数据冗余度高D. 数据独立性高4. 数据库系统的数据独立性体现在(B )。

A .不会因为数据的变化而影响到应用程序B. 不会因为系统数据存储结构与数据逻辑结构的变化而影响应用程序C. 不会因为存储策略的变化而影响存储结构D. 不会因为某些存储结构的变化而影响其他的存储结构5. 要保证数据库的数据独立性,需要修改的是(C )。

A. 模式与外模式B. 模式与内模式C. 三层之间的两种映射D. 三层模式6. 要保证数据库的逻辑数据独立性,需要修改的是(A )。

A. 模式与外模式的映射B. 模式与内模式之间的映射C. 模式D. 三层模式7. 用户或应用程序看到的那部分局部逻辑结构和特征的描述是(C ),它是模式的逻辑子集。

A.模式B.物理模式C. 子模式D. 内模式8. 下述(B )不是DBA 数据库管理员的职责。

A.完整性约束说明B.定义数据库模式C.数据库安全D.数据库管理系统设计9. 常见的数据模型有三种,它们是(B )A 网状、关系和语义B 层次、关系和网状C 环状、层次和关系D 字段名、字段类型和记录10. 在E-R 图中,用来表示属性的图形是(B )A 矩形B 椭圆形C 菱形D 平行四边形二、填空题1. 描述数据库全体数据的全局逻辑结构和特性的是___________ 模式 ______ 。

数据库课后习题作业答案

数据库课后习题作业答案

数据库课后习题作业答案《数据库系统概论》课程习题及参考答案第⼀章绪论(教材37页)1.试述数据、数据库、数据库系统、数据库管理系统的概念。

答:数据:描述事物的符号记录称为数据。

数据的种类有⽂字、图形、图像、声⾳、正⽂等等。

数据与其语义是不可分的。

数据库:数据库是长期储存在计算机内、有组织的、可共享的数据集合。

数据库中的数据按⼀定的数据模型组织、描述和储存,具有较⼩的冗余度、较⾼的数据独⽴性和易扩展性,并可为各种⽤户共享。

数据库系统:数据库系统(DBS)是指在计算机系统中引⼊数据库后的系统构成。

数据库系统由数据库、数据库管理系统(及其开发⼯具)、应⽤系统、数据库管理员构成。

数据库管理系统:数据库管理系统(DBMS)是位于⽤户与操作系统之间的⼀层数据管理软件。

⽤于科学地组织和存储数据、⾼效地获取和维护数据。

DBMS 主要功能包括数据定义功能、数据操纵功能、数据库的运⾏管理功能、数据库的建⽴和维护功能。

2.使⽤数据库系统有什么好处?答:使⽤数据库系统的好处是由数据库管理系统的特点或优点决定的。

使⽤数据库系统的好处很多,例如可以⼤⼤提⾼应⽤开发的效率,⽅便⽤户的使⽤,减轻数据库系统管理⼈员维护的负担等。

为什么有这些好处,可以结合第 5题来回答。

使⽤数据库系统可以⼤⼤提⾼应⽤开发的效率。

因为在数据库系统中应⽤程序不必考虑数据的定义、存储和数据存取的具体路径,这些⼯作都由 DBMS来完成。

此外,当应⽤逻辑改变,数据的逻辑结构需要改变时,由于数据库系统提供了数据与程序之间的独⽴性。

数据逻辑结构的改变是 DBA的责任,开发⼈员不必修改应⽤程序,或者只需要修改很少的应⽤程序。

从⽽既简化了应⽤程序的编制,⼜⼤⼤减少了应⽤程序的维护和修改。

使⽤数据库系统可以减轻数据库系统管理⼈员维护系统的负担。

因为 DBMS 在数据库建⽴、运⽤和维护时对数据库进⾏统⼀的管理和控制,包括数据的完整性、安全性,多⽤户并发控制,故障恢复等等都由DBMS执⾏。

数据库理论习题及答案

数据库理论习题及答案

单项选择1. 现有学生关系Student ,属性包括学号(Sno),姓名(Snam© ,所在系(Sdept), 系主任姓名(Mnam©,课程名(Cn am©和成绩(Grade)。

这些属性之间存在如下联系:一个学号只对应一个学生;一个学生只对应一个系;一个系只对应一个系主任;一个学生的一门课只对应一个成绩;学生名可以重复;系名不重复;课程名不重复。

则以下不正确的函数依赖是(C)。

A. Sno f Sdept「B. Sno f Mn amepC. Sn ame f SdeptpD. Sno Cn ame f Grade2. 下面关于函数依赖的描述,错误的是(D)。

厂A.在函数依赖A fB中,A称为决定因素「B.在关系R中,属性B依赖于属性A,则说明当属性A的值确定之后,属性B的值也就随之确定厂C.函数依赖具有传递性厂D.在关系R中,如果属性A依赖于属性B,这种依赖正式记作:A fB3. 现给定一个关系R的实例如下表,则可能是函数依赖的是(B)。

A. F1 f F2B. F1 F2 f F5C. F3 F4 f F5D. F2 F3 — F44. 关系R包含属性{A1 , A2, A3, A4, A5},其中{A1 , A2}为键码(key),则下面的说法正确的是(C )。

A. {A1}或者{A2}有可能单独成为R的键码广B. {A1,A2, A3}必然也是R的键码广C. R中绝不可能出现两个在A1、A2上取值完全相同的元组厂D. R的所有元组中,A1或者A2的值都是不能重复的5. 下面关于键码的说法,错误的是()。

' A. 一个关系的键码是惟一的r B. 一个关系的键码指定值之后,对应的元组也就确定了「C.关系R的键码的任何真子集都不可能是关系R的键码广D.在保存学生学籍信息处的关系,学生姓名对应的属性不适合单独作为键码6. 在给出的如下表所示关系实例中,有可能作为键码的是(C )。

数据库课后习题

数据库课后习题

数据库课后习题一、选择题1.下列说法中,不正确的是()A.二维表中的每一列均有唯一的字段名B.二维表中不允许出现完全相同的两行C.二维表中行的顺序、列的顺序不可以任意交换D.二维表中行的顺序、列的顺序可以任意交换答案:C2.关系模型中,超关键字()。

A.可由多个任意属性组成B.仅能由一个属性组成C.可由一个或多个其值能唯一标识该关系模式中任何元组的属性组成D.以上都不是答案:C3.ViualFo某Pro是一个()。

A.数据库管理员B.数据库C.数据库系统D.数据库管理系统答案:DA.矩形框B.数据的客观性和结论的准确性C.研究的相对独立性D.以上全是5.DBMS与文件系统的最主要区别是()。

件量D.文件系统不能解决数据冗余和数据独立性问题,而DBMSC.文件系统管理的数据量较小,而DBMS可以管理庞大的数据A.数据库系统复杂,而文件系统简单B.文件系统只管理程序文件,而DBMS能够管理各种类型的文可以解决答案:D6.一个关系相当于一张二维表,二维表中的各栏目相当于该关系的()。

A.数据项B.元组C.结构D.属性答案:DA.索引表示B.指针链表示C.关系表示D.文件表示答案:C8.关系模型的基本结构是()。

A.二维表B.树形结构C.无向图D.有向图答案:A9.由计算机、操作系统、DBMS、数据库、应用程序等组成的整体称为()。

A.数据库系统B.数据库管理系统C.文件系统D.软件系10.打开ViualFo某Pro“项目管理器”的“文档”(Doc)选项卡,其中包含()文件。

答案:D11.实体是信息世界的术语,与之对应的数据库术语为()。

A.文件B.数据库C.记录D.字段答案:C二、填空题:1.数据库的数据用它们的应用程序。

答案:独立性2.一个关系相当于一张二维表,二维表中的各列相当于该关系的。

答案:属性3.二维表中能唯一确定记录的一列或多列的组合称为超关键字。

若一个超关键字去掉其中任何一个列后不再能唯一确定记录,则称其为。

数据库课后习题参考答案与解析

数据库课后习题参考答案与解析

第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、设有两个关系R(A,B)和S(B,C),与下列SELECT语句SELECT A,B FROM RWHERE B NOT IN(SELECT B FROM S WHERE C='C56');等价地关系代数表达式是 [ C]A.πA,B(σC≠'C56'(R?S))B.πA,B(R ? S)C≠'C56' C.R-πA,B(σC= 'C56'(R?S))D.R-πA,B (σC≠'C56'(R?S))2、嵌入式SQL地预处理方式,是指[ B]A.识别出SQL语句,加上前缀标识和结束标志B.把嵌入地SQL语句处理成函数调用形式C.对源程序进行格式化处理D.把嵌入地SQL语句编译成目标程序3、SQL中,“DELETE FROM 表名”表示 [ A]A.从基本表中删除所有元组B.从基本表中删除所有属性C.从数据库中撤消这个基本表D.从基本表中删除重复元组4、SQL中,聚合函数COUNT(列名)用于[ C]A.计算元组个数B.计算属性地个数C.对一列中地非空值计算个数D.对一列中地非空值和空值计算个数5、在传统SQL技术中,使用“ORDER BY”子句地SELECT语句查询地结果,实际上为 [B]A.数组 B.列表 C.包 D.集合6、在数据库中,能提高查询速度地是(C )A. 数据依赖B. 视图C. 索引D. 数据压缩7、语句 delete from sc 表明( A )A. 删除sc中地全部记录B. 删除基本表scC. 删除基本表sc中地列数据D. 删除基本表sc中地部分行8、在DB应用中,一般一条SQL 语句可产生或处理一组记录,而DB主语言语句一般一次只能处理一条记录,其协调可通过( B )实现.A. 指针B. 游标C. 数组D. 栈9、在下列基本表地定义中,数值5表示( C )CREATE TABLE student (Sno char(5) not null unique,Sname char(2));A. 表中有5条记录B. 表中有5列C. 表中字符串Sno 地长度D. 表格地大小10、在视图上不能完成地操作是( C )A. 更新视图B. 查询C. 在视图上定义新地基本表D. 在视图上定义新视图11、下列聚合函数中不忽略空值 (null) 地是(C)A、SUM (列名)B、MAX (列名)C、COUNT ( * )D、AVG (列名)12、SQL地查询语句地where子句中,对空值地操作,不正确地是( C )A、where AGE IS NULLB、whereAGE IS NOT NULLC、whereAGE = NULLD、where NOT (AGE IS NULL)13、Transact-SQL对标准SQL地扩展主要表现为( A ).A. 加入了程序控制结构和变量B. 加入了建库和建表语句C. 提供了分组(Group By)查询功能D. 提供了Min、Max待统计函数14、以下哪种情况应尽量创建索引( A ).A.在Where子句中出现频率较高地列B.具有很多NULL值地列C.记录较少地基本表D.需要更新频繁地基本表15、下列SQL Server语句中出现语法错误地是( D ).A.DECLARE @Myvar INTB.SELECT * FROM [AAA]C.CREATE DATABASE AAAD.DELETE * FROM AAA16、属于事务控制地语句是( A ).A. Begin Tran、Commit、RollBackB. Begin、Continue、EndC. Create Tran、Commit、RollBackD. Begin Tran、Continue、End17、在SQL语言地SELECT语句中,实现投影操作地是哪个子句?(A )A)selectB)fromC)where D)grou by18、用二维表结构表示实体以及实体间联系地数据模型称为(C )A)网状模型 B)层次模型 C)关系模型 D)面向对象模型第(19)至(21)题是基于如下两个关系,其中雇员信息表关系EMP地主键是雇员号,部门信息表关系DEPT地主键是部门号EMP DEPT19、若执行下面列出地操作,哪个操作不能成功执行?(D )A) 从EMP中删除行(‘010’,‘王宏达’,‘01’,1200)B)在EMP中插入行(‘102’,‘赵敏’,‘01’,1500)C) 将EMP中雇员号=‘056’地工资改为1600元D) 将EMP中雇员号=‘101’地部门号改为‘05’20、若执行下面列出地操作,哪个操作不能成功执行?(C )A) 从DEPT 中删除部门号=‘03’地行B)在DEPT中插入行(‘06’,‘计划部’,‘6号楼’)C) 将DEPT中部门号=‘02’地部门号改为‘10’D) 将DEPT中部门号=‘01’地地址改为‘5号楼’21、在雇员信息表关系EMP中,哪个属性是外键(foreign key)?(C )A) 雇员号B) 雇员名C) 部门号D) 工资22、设关系R和关系S地元数分别是3和4,关系T是R与S地广义笛卡尔积,即:T=R×S,则关系T地元数是(A )A) 7 B) 9 C) 12 D) 123、设属性A是关系R地主属性,则属性A不能取空值(NULL).这是(A )A) 实体完整性规则 B) 参照完整性规则C) 用户定义完整性规则 D) 域完整性规则24、下面列出地关于“视图(View)”地条目中,哪一条是不正确地?( B)A) 视图是外模式B)使用视图可以加快查询语句地执行速度C) 视图是虚表 D) 使用视图可以简化查询语句地编写25、SQL语言集数据查询、数据操纵、数据定义和数据控制功能于一体,语句INSERT、DELETE、UPDATE实现哪类功能?(B )A) 数据查询B) 数据操纵C) 数据定义D) 数据控制26、在数据库管理系统中,下面哪个模块不是数据库存取地功能模块?( A)A) 事务管理程序模块B) 数据更新程序模块C) 交互式程序查询模块D) 查询处理程序模块27、SQL查询语句中,用于测试子查询是否为空地谓词是(A).A、EXISTSB、UNIQUEC、SOMED、ALL28、下列SQL语句中,插入数据地是(D ).A、CREATEB、ALTERC、UPDATED、INSERT29、在下面所列出地条目中,哪些是数据库管理系统地基本功能?(D )Ⅰ.数据库定义Ⅱ.数据库地建立和维护Ⅲ.数据库存取Ⅳ.数据库和网络中其他软件系统地通信A) Ⅰ和ⅡB) Ⅰ、Ⅱ和ⅢC) Ⅱ和ⅢD) 都是30、当修改基本数据时,下列关系视图地说法正确地是(B )A、需要重建B、查以看到修改结果C、无法看到修改结果式D、不许修改带视图地基表31、在数据库管理系统地层次结构中,由高级到低级地层次排列顺序为(D )A) 应用层、数据存取层、数据存储层、语言翻译处理层B) 应用层、数据存储层、数据存取层、语言翻译处理层C) 应用层、数据存储层、语言翻译处理层、数据存取层D) 应用层、语言翻译处理层、数据存取层、数据存储层32、在SQL语言地SELECT语句中,实现投影操作地是( A )子句.A、selectB、fromC、whereD、grou by33、SQL中,“AGE IN(20,22)”地语义是( D ).A)AGE<=22 AND AGE >=20 B)AGE <22 AND AGE >20C)AGE =20 AND AGE =22 D)AGE =20 OR AGE =2234 SQL中,聚合函数COUNT(列名)用于( C )A.计算元组个数B.计算属性地个数C.对一列中地非空值计算个数D.对一列中地非空值和空值计算个数35、Transact-SQL对标准SQL地扩展主要表现为(A ).A. 加入了程序控制结构和变量B. 加入了建库和建表语句C. 提供了分组(Group By)查询功能D. 提供了Min、Max统计函数36、已知关系:厂商(厂商号,厂名)PK=厂商号产品(产品号,颜色,厂商号)PK=产品号,FK=厂商号假设两个关系中已经存在如图所示元组:厂商产品若再往产品关系中插入如下元组:I(P03,红,C02)II(P01,蓝,C01)III(P04,白,C04)IV(P05,黑,null)能够插入地元组是( D )A I,II,IVB I,IIIC I,IID I,IV37、设有一个关系:DEPT(DNO,DNAME),如果要找出倒数第三个字母为W,并且至少包含4个字母地DNAME,则查询条件子句应写成WHERE DNAME LIKE ( B )A ‘_ _ W _ %’B ‘_ % W _ _’C ‘_ W _ _’D ‘_ W _ %’38、下列SQL语句中,修改表结构地是(D).A、CREATEB、INSERTC、UPDATED、ALTER39、SQL语句通常称为( A).A、结构化查询语言B、结构化控制语言C、结构化定义语言D、结构化操纵语言40、SQL语言地一体化特点主要是与( B)相比较而言地.A、操作系统命令B、非关系模型地数据语言C、高级语言D、自然语言41、SQL语言中,删除一个表地命令是( B )A、 DELETE tableB、DROP tableC、 CLEAR tableD、 REMORE table42、在基表S中查询所有姓名中有“国”地学生,在WHERE子句中应使用( A)通配符.A. LIKE ’%国%’B. LIKE ‘%国_’C. LIKE ’_国%’D. LIKE ‘_国_’43、下列哪个不属于数据库对象(B )A、默认B、SELECT语句C、存储过程D、视图44、下列那一个不属于SQL SERVER工具(A )A数据库管理器 B、事件探查器 C、导入和导出数据 D、查询分析器45、下列那一个不属于企业管理器地功能(D )A、注册服务器B、配置本地和远程服务器C、引入和导出数据D、为WINDOWS创建操作系统用户46、关于SQL Server文件组地叙述正确地是:( A ).A、一个数据库文件不能存在于两个或两个以上地文件组里B、日志文件可以属于某个文件组C、文件组可以包含不同数据库地数据文件D、一个文件组只能放在同一个存储设备中47、下面关于外码地描述中,不正确地是(C ).A. 外码体现了关系间地联系手段B. 外码是某个关系地码C. 外码不是任何关系地码D. 外码是一个关系地码同时是另一个关系地属性48、在SQL Server 中关于索引叙述正确地是:( B ).A、每个数据库表可以建立多个聚集索引B、每个表可以定义多个非聚集索引C、索引地数据保存在同一个表中D、索引不会改变表中地数据49、关于索引描述错误地是以下地哪一个?( A)A、表中地任何数据列都可以添加索引B、创建索引地列最好不要含有许多重复地值C、一般不给很少使用地列添加索引D、并不是数据库中聚集索引越多搜索效率就越高50、关于存储过程地描述正确地一项是:( C ).A、存储过程地存在独立于表,它存放在客户端,供客户使用B、存储过程只是一些T-SQL语句地集合,不能看作SQL Server 地对象C、存储过程可以使用控制流语句和变量,大大增强了SQL地功能D、存储过程在调用时会自动编译,因此使用方便51、关于触发器叙述正确地是( A ).A、触发器是自动执行地,可以在一定条件下触发B、触发器不可以同步数据库地相关表进行级联更改C、SQL Server 不支持DDL触发器D、触发器不属于存储过程52、在基表S中删除电话号码(PHONE)属性使用( B)命令.A. ALTER S DROP PHONEB. ALTER TABLE S DROP PHONEC. UPDATE TABLE S PHONED. DROP TABLE S PHONE54、描述事物性质地最小数据单位是( C ).A. 记录B. 文件C. 数据项D. 数据库55.在SQL数据库中,视图(view)是从一个或几个基表(或视图)导出地表,它本身不独立存储在数据库中,即数据库中只存放视图地定义而不存放视图对应地数据,这些数据仍然存放在对应地基表中.因此视图( B ).A. 也是一个表B. 是一个虚表C. 是一个数据库D. 是一个文件56.当前DBMS所支持地数据模型地主流是(C).A. 网状模型B. 层次模型C. 关系模型D. 面向对象模型57. 能唯一地标识实体属性地( C)称为主码.A. 组和B. 排列C. 集合D. 元组58下述关于数据库系统地正确叙述是( B).A. 数据库中只存在数据项之间地联系B. 数据库地数据项之间和记录之间都存在联系C. 数据库地数据项之间无联系,记录之间存在联系D. 数据库地数据项之间和记录之间都不存在联系59.授权定义经过编译和存储在( D)中.A. DBMDB. 视图C. 基表D. 数据库60.假定学生关系是S(S#,SNAME,SEX,AGE),课程关系是C(C#,CNAME,TEACHER),学生选课关系是SC(S#,C#,GRADE),要查找选修“COMPUTER”课程地女学生地姓名,将涉及到关系(D).A. SB. SC,CD. S,C,SC61.数据库技术地奠基人之一,E.F.Codd于1970年发表过多篇论文,主要论述地是(C) .A. 层次数据模型B. 网络数据模型C. 关系数据模型D. 面向对象数据模型62.数据库管理系统通常提供授权功能来控制不同用户访问数据地权限,这主要是为了实现数据库地( D).A. 可靠性B. 一致性C. 完整性D. 安全性63、SQL语言地GRANT和REVOKE语句主要用来维护数据库地(A ).A. 安全性B. 完整性C. 可靠性D. 一致性64、在关系数据库中,实现“表中任意二行不能相同”地约束是靠(C ) .A. 外码B. 属性C. 主码D. 列65、对表进行垂直方向地分割用地运算是(B ).A. 交B. 投影D. 连接66、关系数据库中,实现表与表之间地联系是通过_(B).A. 实体完整性规则B. 参照完整性规则C. 用户自定义完整性D. 值域67、关系数据库中,实现主码标识元组地作用是通过(A) .A. 实体完整性规则B. 参照完整性规则C. 用户自定义完整性D. 属性地值域68、如果有n个事务串行调度,那么不同地有效调度有[ D]A.n2 B.2n C.4n D.n!69、部分匹配查询中有关通配符“_”地正确地叙述是 ( D)A.“_”代表多个字符B.“_”可以代表零个或多个字符C.“_”不能与“%”一同使用D.“_”代表一个字符70、下列SQL语句中,能够实现“收回用户ZHAO对学生表(STUD)中学号(XH)地修改权”这一功能地是CA.REVOKE UPDATE(XH) ON TABLE FROM ZHAOB.REVOKE UPDATE(XH) ON TABLE FROM PUBLICC.REVOKE UPDATE(XH) ON STUD FROM ZHAOD.REVOKE UPDATE(XH) ON STUD FROM PUBLIC71、把对关系SC地属性GRADE地修改权授予用户ZHAO地SQL 语句是(C)A)GRANT GRADE ON SC TO ZHAOB)GRANT UPDATE ON SC TO ZHAOC)GRANT UPDATE (GRADE) ON SC TO ZHAOD)GRANT UPDATE ON SC (GRADE) TO ZHAO二、填空题1、在SQL查询语句中,用于测试子查询是否为空地谓词是_ EXISTS __.2、在查询操作结果中不出现重复元组,应在Select子句中使用_ DISTINCT_保留字.3、.SQL地SELECT语句在未使用分组子句但在SELECT子句中使用了聚合函数.此时SELECT 子句地语句就不是投影地意思了,而是对查询结果执行聚合操作.4、数据库系统地权限控制方法分为自主存取控制和强制存取控制方法两种5、在SQL Server 中,数据库地文件分为主数据文件_、辅助数据文件_和_事务日志文件三大类;6、SQL地数据操纵功能主要包括INSERT、__UPDATE__和__DELETE_三个语句.7、在字符匹配查询中,通配符“%”代表_任意多个字符___,“_”代表__任意单个字符.8、触发器是一种特殊地存储过程,它可以在对一个表上进行__插入__、_删除_和___修改__操作中地任一种或几种操作时被自动调用执行.9、视图是一个虚表,它是从一个或几个基本表中导出地表.在数据库中,只存放视图地结构定义,不存放视图地对应地数据.三、判断题1、视图是一张虚表,所有地视图中不存储数据(√)2、用户不允许使用视图修改表数据(×)3、数据库中地视图只能使用所属数据库地表,不能访问其它数据库地表(×)4、视图既可以通过表得到,也可以通过其它视图得到(√)5、规则在创建后,并不能直接使用,必须绑定到表中某一列或者用户定义地数据类型上.(√)6、创建规则对象后,必须把它绑定到一个列或用户定义地数据类型上才能起作用.(√)触发器就其本质而言是一种特殊地存储过程.存储过程和触发器在数据库地开发中,在维护数据库实体完整性等方面具有不可替代地作用.(×)8、现实世界地对象在数据库中用实体描述(╳)9、游标是系统为用户地查询结果开辟地数据缓冲区,存放SELECT语句地查询结果.(√)10、在数据库系统中,核心地部分是应用程序.(√ )11、候选码可以选作主码,但一个主码不总是候选码. (√ )12、存储过程是存放在服务器上地预先定义与编译好地SQL语句地命名集合(√)13.视图、表是一样地,都可以进行更新操作地. ( ╳ )14、触发器操作与约束有冲突时,触发器仍会执行.( ╳ )15、删除触发表时,触发器被随之删除.(√)16、Order by子句仅对检索数据地显示有影响,并不改变表中行地内部顺序.(√)17、从一个表中删除元组时,delete和drop table命令可以起到同样地效果.(×)18、与主键不同,惟一性可以是null值.(√)19、使用having子句是为了限制group by子句返回地行地个数.(√)20、在数据表定义时设置Primary key是数据库地实体完整性控制. (√)21、在数据表定义时设置主键(Primary key)则不允许插入全为空地记录.(√)22、数据库一旦建立,就没有办法重命名了,所以命名数据库要慎重.(×)四、综合题1、设某商业集团关于商店销售商品地数据库中有三个基本表:商店SHOP(S#,SNAME,AREA,MGR_NAME)其属性是商店编号,商店名称,区域名,经理姓名.销售SALE(S#,G#, QUANTITY)其属性是商店编号,商品编号,销售数量.商品GOODS(G#,GNAME,PRICE)其属性是商品编号,商品名称,单价.(1)试写出检索销售“冰箱”地商店地编号和商店名称地SELECT语句表达形式.(2)试写出下列操作地SQL语句:从SALE表中,把“开开商店”中销售单价高于1000元地商品地销售元组全部删除. (3)试写出下列操作地SQL语句:统计区域名为“EAST”地所有商店销售地每一种商品地总数量和总价值.要求显示(G#,GNAME,SUM_QUANTITY,SUM_VALUE),其属性为商品编号、商品名称、销售数量、销售价值.1、答:解:(1)SELECT语句如下:SELECT A.S#,SNAMEFROM SHOP A,SALE B,GOODS CWHERE A.S#=B.S# AND B.G#=C.G# AND GNAME='冰箱';(2)解:DELETE FROM SALEWHERE S# IN(SELECT S#FROM SHOPWHERE SNAME='开开商店')AND G# IN(SELECT G#FROM GOODSWHERE PRICE>1000);(3)解:SELECT C.G#,GNAME,SUM(QUANTITY)AS SUM_QUANTITY,PRICE*SUM(QUANTITY)AS SUM_VALUEFROM SHOP A,SALE B,GOODS CWHERE A.S#=B.S# AND B.G#=C.G# AND AREA='EAST'GROUP BY C.G#,GNAME;(注:SELECT子句中地属性C.G#,GNAME应在分组子句中出现)2、设数据库中有两个基本表:职工表 EMP(E#,ENAME,AGE,SALARY,D#),其属性分别表示职工工号、姓名、年龄、工资和工作部门地编号.部门表 DEPT(D#,DNAME,MGR#),其属性分别表示部门编号、部门名称和部门经理地职工工号.(1)试指出每个表地主键和外键.并写出每个表创建语句中地外键子句.(2)写出下列查询地关系代数表达式和SQL语句:检索每个部门经理地工资,要求显示其部门编号、部门名称、经理工号、经理姓名和经理工资.(3)建一个年龄大于50岁地职工视图,属性为(D#,DNAME,E#,ENAME,AGE,SALARY). 答:(1)EMP表地主键为E#,外键为D#.DEPT表地主键为D#,外键为MGR#在EMP表地创建语句中,可写一个外键子句:FOREIGN KEY D# REFERENCES DEPT(D#);在DEPT表地创建语句中,可写一个外键子句:FOREIGN KEY MGR# REFERENCES EMP(E#);(2)关系表达式为:πDEPT.D#,DNAME,MGR#,ENAME,SALARY(DEPT ? EMP)MGR#=E# SELECT语句为:SELECT DEPT.D#,DNAME,MGR#,ENAME,SALARYFROM DEPT,EMPWHERE MGR#=E#;(3)CREATE VIEW VIEW5AS SELECT DEPT.D#,DNAME,E#,ENAME,AGE,SALARY FROM DEPT,EMPWHERE DEPT.D#=EMP.D# AND AGE>50;3、有图书借阅管理地数据库系统,其数据库关系模式(属性只用英文字母)为:学生(学号,姓名,系别,专业)主码为:学号图书B(图书编号,图书名,出版日期,出版社)主码为:图书编号借阅R(学号,图书编号,借阅日期)主码为:(学号,图书编号)外码有:学号、图书编号请写出完成下列操作地SQL语句(1)创建借阅R表,要求指定其主码和外码Create table 借阅(学号 char(10) foreign key references 学生, 图书编号 char(10) foreign key references 图书,借阅日期 datetime ,primary key(学号, 图书编号)(2)向借阅表增加记录(’20030101‘,‘tp201.01’, ‘2006/06/12‘).Insert into 借阅values (’20030101’, ‘tp201.01’, ‘2006/06/12‘)(3)将图书表地查询权授给user用户,并允许其转授给其他人Grant select on 图书 to uset with grant option(4)、查询借阅了“数据库原理”一书地学生信息.Select * from 学生 where学号 in (select学号 from 借阅Where 图书编号 in select 图书编号 from 图书where 图书名=’数据库原理’(5)、查询借阅了关于数据库方面书籍地学生地学号、图书名称和出版社.Select 学号,图书名,出版社 from 借阅 A, 图书 Bwhere A. 学号=B. 学号 and 图书名like ‘%数据库%’(6)查询2006年5月1日到2006年6月1日期间,图书地借阅情况Select * from 借阅 where 借阅日期between ‘2006/05/01’ and ‘2006/06/01’4、设教学数据库中有四个关系:教师(教师编号,教师姓名,联系电话)课程(课程号,课程名,教师编号)学生(学号,学生姓名,年龄,性别,专业)选课(学号,课程号,成绩)(1)创建学生表和选课表,要求:指定每个表地主关键字、外部关键字和check约束. (2)将所有学生地“高等数学”课程地成绩增加10分.Update选课 set成绩=成绩+10 where课程号in (select课程号 from 课程 where课程名=’高等数学’(3)将课程表地查询和修改权限授给teacher用户,同时允许转授给其它用户.Grant select,update on 课程 to teacher with grant option(4)查询男生所学课程地课程号和课程名.Selec 课程号,课程名 FROM 学生,选课,课程Where学生.学号=选课.学号 and 选课.课程号=课程.课程号and 性别=’男’或Selec 课程号,课程名 FROM 课程 where课程号 in (Select 课程号 from 选课 where 学号 in (Select学号 from 学生 where 性别=’男’))(5)查询所有姓王地教师所授课程地课程号和成绩(按课程号排序).Select 选课.课程号, 成绩 from 教师,课程,选课 where 教师姓名like ‘王%’And 教师.教师编号=课程.教师编号and 课程.课程号=选课.课程号order by 课程号(6)统计每门课程地学生选修人数(超过10人地课程才统计).要求显示课程号和人数,查询结果按人数降序排列.Select 课程号 ,count(学号) 人数 from 选课group by课程号 having count(*)>10 order by 人数 desc(7)检索所有姓“李”地学生地姓名和年龄Select 学生姓名,年龄 from 学生 where 学生姓名like ‘李%’(8)求男生地最高成绩Select max(成绩) from 选课 where 学号 in (select 学号 from 学生Where 性别=’男’)5、已知有关系:仓库(仓库号,城市,面积)职工(仓库号,职工号,工资)订购单(职工号,供应商号,订购单号,订购日期)供应商(供应商号,供应商名,地址)(1)创建订购单表,要求:数据类型及长度自定义,并指定其主码和外码Create table 订购单表(职工号 char(10) foreign key references 职工,供应商号 char(10) foreign key references供应商,订购单号 char(10) primary key,订购日期 datetime)(2)修改职工表,增加一个职工名(可变长字符型,最长为20)字段Alter 职工表 add 职工名 varchar(20)(3)向订购单表中增加一条记录,记录值为:(’ZG0001’,‘GY0001’, ‘DD0001’,‘2006/06/12’)Insert into 订购单表values (’ZG0001‘,‘GY0001’, ‘DD0001’,‘2006/06/12’)(4)给低于所有职工平均工资地职工提高10%地工资.UPDATE 职工SET 工资=工资*1.1 WHERE 工资< (SELECT AVG(工资) FROM 职工)(5)删除所有目前没有任何订购单地供应商.DELETE FROM 供应商 WHERE 供应商号 NOT IN(SELECT 供应商号 FROM 订购单)(6)将职工表地查询权授给USER用户,并允许其转授给其他人Grant select on职工表 to USER with grant option(7)检索出向供应商S3发过订购单地职工地职工号和仓库号.SELECT 职工号,仓库号 FROM 职工 WHERE 职工号 IN( SELECT 职工号 FROM 订购单 WHERE 供应商号=’S3’ )(8)检索出目前没有任何订购单地供应商信息.SELECT * FROM 供应商 WHERE NOT EXISTS( SELECT * FROM 订购单 WHERE 供应商号=供应商.供应商号 ) (9)检索出和职工E1、E3都有联系地北京地供应商信息.SELECT * FROM 供应商 WHERE 供应商号 IN( SELECT 供应商号 FROM 订购单 WHERE 职工号=’E1’ )AND 供应商号 IN( SELECT 供应商号 FROM 订购单 WHERE 职工号=’E3’ )(10)检索出目前和华通电子公司有业务联系地每个职工地工资.SELECT 职工号,工资 FROM 职工 WHERE 职工号 IN(SELECT 职工号 FROM 订购单 WHERE 供应商号 IN(SELECT 供应商号 FROM 供应商 WHERE 供应商名=’华通电子公司’)) (11)检索出与工资在1220元以下地职工没有联系地供应商地名称.SELECT 供应商名 FROM 供应商 WHERE 供应商号 IN(SELECT 供应商号 FROM 订购单 WHERE 职工号 NOT IN(SELECT 职工号 FROM 职工 WHERE 工资 < 1220))(12)检索出向S4供应商发出订购单地仓库所在地城市.SELECT 城市 FROM 仓库 WHERE 仓库号 IN(SELECT 仓库号 FROM 职工 WHERE 职工号 IN(SELECT 职工号 FROM 订购单 WHERE 供应商号=’S4’))(13)检索出在上海工作并且向S6供应商发出了订购单地职工号.(SELECT 仓库号 FROM 仓库 WHERE 城市=’上海’) AND 职工号 IN(SELECT 职工号 FROM 订购单 WHERE 供应商号=’S6’))(14)检索出在广州工作并且只向S6供应商发出了订购单地职工号.SELECT 职工号 FROM 职工 WHERE 仓库号 IN(SELECT 仓库号 FROM 仓库 WHERE 城市=’广州’) AND 职工号 IN(SELECT 职工号FROM 订购单WHERE 供应商号=’S6’) AND 职工号NOT IN (SELECT 职工号FROM 订购单WHERE 供应商号!=’S6’)(15)检索出由工资多于1230元地职工向北京地供应商发出地订购单号.SELECT 订购单号 FROM 订购单 WHERE 职工号 IN(SELECT 职工号 FROM 职工 WHERE 工资>1230) AND 供应商号IN(SELECT 供应商号 FROM 供应商 WHERE 地址=’北京’)(16)检索出有最大面积地仓库信息.SELECT * FROM 仓库 WHERE 面积=(SELECT MAX(面积) FROM 仓库)(17)检索出向S4供应商发出订购单地那些仓库地平均面积.SELECT AVG(面积) FROM 仓库 WHERE 仓库号 IN(SELECT 仓库号 FROM 职工 WHERE 职工号 IN(SELECT 职工号 FROM 订购单 WHERE 供应商号=’S4’))(18)检索出每个城市地供应商个数.SELECT 地址,COUNT(*) FROM 供应商 GROUP BY 地址(19)检索出和面积最小地仓库有联系地供应商地个数.SELECT COUNT(*) FROM 供应商 WHERE 供应商号 IN(SELECT 供应商号 FROM 订购单 WHERE 职工号 IN(SELECT 仓库号 FROM 仓库 WHERE 面积=(SELECT MIN(面积) FROM 仓库))))(20)插入一个新地供应商元组(S9,智通公司,沈阳).INSERT INTO 供应商VALUES(‘S9’,’智通公司’,’沈阳’)(21)删除由在上海仓库工作地职工发出地所有订购单.DELETE FROM 订购单 WHERE 职工号 IN(SELECT 职工号 FROM 职工 WHERE 仓库号 IN(SELECT 仓库号 FROM 仓库 WHERE 城市=’上海’)版权申明本文部分内容,包括文字、图片、以及设计等在网上搜集整理.版权为个人所有This article includes some parts, including text, pictures, and design. Copyright is personal ownership.BkeGuInkxI 用户可将本文地内容或服务用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律地规定,不得侵犯本网站及相关权利人地合法权利.除此以外,将本文任何内容或服务用于其他用途时,须征得本人及相关权利人地书面许可,并支付报酬.PgdO0sRlMoUsers may use the contents or services of this article for personal study, research or appreciation, and othernon-commercial or non-profit purposes, but at the same time, they shall abide by the provisions of copyright law and other relevant laws, and shall not infringe upon the legitimate rights of this website and its relevant obligees. In addition, when any content or service of this article is used for other purposes, written permission and remuneration shall be obtained from the person concerned and the relevant obligee.3cdXwckm15转载或引用本文内容必须是以新闻性或资料性公共免费信息为使用目地地合理、善意引用,不得对本文内容原意进行曲解、修改,并自负版权等法律责任.h8c52WOngMReproduction or quotation of the content of this article must be reasonable and good-faith citation for the use of news or informative public free information. It shall not misinterpret or modify the original intention of the content of this article, and shall bear legal liability such as copyright.v4bdyGious。

数据库习题

数据库习题

数据库习题第一讲走进数据库1.1走进数据库1数据库系统与文件系统的最根本的区别是()。

A.文件系统只能管理程序文件,而数据库系统可以管理各种类型文件B.数据库系统复杂,而文件系统简单C.文件系统管理的数据量少,而数据库系统可以管理庞大数据量D.文件系统不能解决数据冗余和数据的独立性,而数据库系统能正确答案:D2下述不是DBA 数据库管理员的职责的是()。

A.完整性约束说明B.定义数据库模式C.数据库管理系统设计D.数据库安全正确答案:C3数据库(DB ),数据库系统(D BS)和数据库管理系统(D BMS)之间的关系是()。

A.DBS 包括DB 和DBMSB.DBMS 包括DB 和DBSC.DB 包括DBS 和DBMSD.DBS 就是DB,也就是DBMS正确答案:A4()是以一定的组织方式将相关的数据组织在一起,长期存放在计算机内,可为多个用户共享,与应用程序彼此独立,统一管理的数据集合。

正确答案:数据库5 在数据库的三级模式结构中,描述数据库中全体数据的逻辑结构和特征的是()。

正确答案:模式1.2关系数据库1在关系运算中,选择运算的含义是()。

A.从一个关系中找出满足给定条件的元组组成一个新的关系B.从一个关系中找出需要的属性组成一个新的关系C.从一个关系中找出满足条件的元组和属性组成一个新的关系D.以上3 种说法均是正确的正确答案:A2在“学生表”中,要查找所有年龄大于30 岁姓王的男同学,所采用的关系运算是()。

A.选择B.投影C.连接D.自然连接正确答案:A3在关系运算中,()运算得到的新关系中属性个数通常多于原关系中属性个数。

A.选择B.投影C.连接D.并正确答案:C4在“教师表”中要显示教师的姓名和职称的信息,应采用的关系运算是()A.选择B.投影C.连接D.差正确答案:B5传统的集合运算包含并、差、交和()。

正确答案:笛卡尔积6关系运算中专门的关系运算,包括选择、投影和()正确答案:连接7在关系运算中,要选择若干属性组成新的关系,该运算称为()。

数据库考试习题及答案

数据库考试习题及答案

数据库考试习题及答案一、选择题1.下列哪些选项关于数据库的定义是正确的?A. 数据库是计算机存放数据的设备B. 数据库是由数据项及其关系组成的数据集合C. 数据库是一个可以存储和访问数据的电子系统D. 数据库是个人或组织为了方便存储和管理数据而构建的系统正确答案:B、C、D。

2.下列哪些选项是 SQL 中的聚集函数?A. MAXB. AVGC. COUNTD. ADD正确答案:A、B、C。

3.数据库中,以下哪个不是关系型数据库系统?A. MySQLB. OracleC. MongoDBD. SQL Server正确答案:C。

4.在关系数据库模型中,下列哪些选项是数据完整性的约束条件?A. 实体完整性B. 参照完整性C. 域完整性D. 逻辑完整性正确答案:A、B、C、D。

5.下列哪些选项是数据库事务的 ACID 特性?A. 原子性B. 一致性C. 隔离性D. 持久性正确答案:A、B、C、D。

二、填空题1.在关系数据库中,一个二元组 ______ 表示一个数据行。

正确答案:属性值。

2.数据库中,SELECT * FROM table_name; 语句表示查询表名为 ______ 的全部数据。

正确答案:table_name。

3.MySQL 中,用于获取自动生成的主键的函数为 ______。

正确答案:LAST_INSERT_ID()。

4.数据库中,用于限制某个列的唯一性约束的关键字是 ______。

正确答案:UNIQUE。

5.在数据库设计中,将不可分的数据项成为 ______。

正确答案:原子数据。

三、简答/计算题1.简述数据库视图的概念和作用。

数据库视图是一个虚拟的表格,其内容是从一个或多个基本表格导出的。

视图仅仅是一个从基本表中某些数据所得的数据集合,因此不具有实际存储的数据记录。

作用主要有以下几个:提供一种以安全方式存取数据的方式,尽可能地简化复杂的SQL语句,使得用户看到的是一张基于若干个底层表的虚拟表格,避免不必要的数据访问,增强系统安全性。

数据库练习题(含答案)

数据库练习题(含答案)

数据库练习题(含答案)一、单选题(共80题,每题1分,共80分)l、同一个数据模型的任意两个元组值()A、不能全同B、可全同C、必须全同D、以上都不是正确答案: A2、在创建主/子窗体之前,要确定主窗体与子窗体之间的数据源之间存在着的关系。

A、多对一B、多对多C、一对一D、一对多正确答案: D3、Access不能对数据类型进行排序和索引。

()A、文本B、数字C、备注D、自动编号正确答案: D4、任何一个满足2F但不满足3N F的关系模式都存在()A、非主属性对候选码的传递依赖B、主属性对候选码的部分依赖C、非主属性对候选码的部分依赖D、主属性对候选码的传递依赖正确答案: A5、以下哪一条属千关系数据库的规范化理论要解决的问题?()A、如何构造合适的应用程序界面B、如何构造合适的数据库逻辑结构C、如何控制不同用户的数据操作权限D、如何构造合适的数据库物理结构正确答案: B6、在数据管理技术发展的三个阶段中,数据独立性最好的是()。

A、人工管理阶段B、文件系统阶段C、数据库系统阶段D、三个阶段相同正确答案: C答案解析:数据库系统管理阶段的独立性最高,是因为采用了数据库管理系统来管理数据,将应用程序和数据分开存储。

7、在设计表时,若输人掩码属性设置为"LL", 则能接收的输人是()A、abBdB、aBC、AB+CD、AB a9正确答案: B答案解析:在输入掩码的格式符号中,"L"表示在该位置必须输入一个字母。

B送选项中少了一个字母,C选项中不能接受"+"'D选项中不能接受"9"8、在下列SQL语句中,修改表结构的语句是()。

A、AL T ERB、CRE A TEC、UP D ATED、IN SE R T正确答案: A9、空数据库是指()A、没有基本表的数据库B、没有任何数据库对象的数据库C、数据库中数据表记录为空的数据库D、没有窗体和报表的数据库正确答案: B答案解析:Access由六大对象组成,因此空数据库必须是没有任何对象的数据库。

数据库练习题

数据库练习题

数据库练习题目录综合练习(一) (2)1.数据库管理 (2)2.表的管理 (12)3.数据管理 (12)4.简单查询 (13)5.多表查询 (13)综合练习(二) (5)1.数据库管理 (5)2.表的管理 (5)3.数据管理 (5)4.简单查询 (6)5.多表查询 (6)综合练习(三) (7)1.数据库管理 (7)2.表的管理,创建学生表 (7)3.数据管理 (7)4.简单查询 (7)5.多表查询 (8)综合练习(四) (10)1.建数据库 (10)2.创建学生表 (10)3.表记录的操作,按要求补充语句 (10) 4.单表查询,按要求写出查询语句 (10) 5.多表查询,对下列语句查询进行修改 (11) 综合练习(五) (12)1.数据库管理 (2)2.表的管理 (2)3.数据管理 (2)4.简单查询 (3)5.多表查询 (3)综合练习(一)1.数据库管理创建StudentsManager数据库,要求必须有主数据库文件,辅助数据库文件,日志文件。

其中:(1)主数据文件放在C:\Students文件夹下,文件名为students.mdf,主数据文件的自增长为3MB;(2)辅助数据文件放在C:\Studentsr文件夹下,文件名为students_data2.ndf,辅助数据文件的初始化大小为2MB;最大值50MB,自增长为3M;(3)事物日志文件放在F:\Students文件夹下,文件名为students_log.ldf,初始化大小为2MB,最大值为不限制,自增长为10%。

2.表的管理3.数据管理在第2题学生信息表的基础上完成下面的操作:成绩加5分。

update stuInfo set word=word+5 where Word=60 or Word<60(3)更新同学成绩,把所有同学的powerpoint成绩都加5分。

update stuInfo set Powerpoint=Powerpoint+5(4)删除姓名为“张三丰”的同学信息。

数据库期末考试习题

数据库期末考试习题

•A.网状型•B.以上都不是•C.层次型•A.数据•B.用户•C.数据库管理系统2.00/2.00•D.硬件•A.一对零•B.一对多2.00/2.00•C.多对多•A..mdf•B..mdb•C..ldf2.00/2.00••A.UNLIMITED•B.NAME•C.FILENAME2.00/2.00•A.create table•B.alter database•C.alter table•A.alter database2.00/2.00•B.alter table•C.create database•A.日期时间型•B.布尔类型2.00/2.00•C.货币型•A.create table2.00/2.00•B.create database•C.alter database•A.nchar•B.int2.00/2.00•C.char•A.可取值相同•B.可为空•C.必须是有序的•D.不能取值相同2.00/2.00•A.定义主键•B.定义唯一约束•C.定义外键2.00/2.00•D.确定主键类型•A.Primary Key(主键名)•B.ALTER TABLE 表名ADD CONSTRAINT外键约束名FOREIGN KEY(外键字段名)REFERENCES 主键表名(主键字段名)•C.constraint 主键约束名Primary Key(主键名)•A.定义主键•B.定义唯一约束•C.定义外键•A.唯一约束应用于表中的非主键列•B.设置为唯一约束的字段值不允许有空值2.00/2.00•C.唯一约束用于防止在字段中输入重复的值•D.唯一约束用于指定一个或者多个字段的组合的值具有唯一性正确答案:B你选对了•A.身份验证模式的配置可以在SSMS中进行配置•B.使用SSMS进行身份模式配置完成之后需要保存并重启SQL server 服务器•C.一旦在安装时设定好身份验证模式,就不能再修改了2.00/2.00•A.having•B.where•C.order by2.00/2.00•D.•A.group by2.00/2.00•B.order by•C.无需配合•D.where•A.>=60 OR <=80•B.IN (60,80)•C.>60 OR <80•A.select top 3 * from 学生 where 性别="女" group by 身高•B.select top 3 * from 学生 where 性别="女" order by 身高2.00/2.00•C.select * from 学生 where 性别="女" group by 身高•A.视图是从一个或多个基本表导出的表,它是虚表•B.视图一经定义就可以和基本表一样被查询和更新0.00/2.00•C.视图不能被用来对无权用户屏蔽数据•A.唯一索引•B.聚集索引2.00/2.00•C.非聚集索引•A.连接查询•B.子查询2.00/2.00•C.父查询•A.sp_2.00/2.00•B.qs_•C.ps_•D.sq_•A.索引•B.存储过程2.00/2.00•C.视图•D.表•A.语句单元•B.语句集合•C.操作语句•A.向锁•B.更新锁•C.排他锁•A.独立的•B.相互联系的2.00/2.00•C.以上都对•D.相互对立的正确答案:B你选对了•A.密码•B.用户名•C.权限2.00/2.00•A.更新•B.恢复2.00/2.00•C.删除•D.备份正确答案:B你选对了。

数据库习题(含参考答案)

数据库习题(含参考答案)

习题1一、问答题1. 什么是数据?数据有什么特征?数据和信息有什么关系?答:答:数据是用于载荷信息的物理符号。

数据的特征是:①数据有“型”和“值’之分;②数据受数据类型和取值范围的约束;③数据有定性表示和定量表示之分;④数据应具有载体和多种表现形式。

数据与信息的关系为:数据是信息的一种表现形式,数据通过能书写的信息编码表示信息。

信息有多种表现形式,它通过手势、眼神、声音或图形等方式表达,但是数据是信息的最佳表现形式。

由于数据能够书写,因而它能够被记录、存储和处理,从中挖掘出更深层的信息。

但是,数据不等于信息,数据只是信息表达方式中的一种。

正确的数据可表达信息,而虚假、错误的数据所表达的是谬误,不是信息。

2. 什么是数据库?数据库中的数据有什么特点。

答:答:数据库是数据管理的新方法和技术,它是一个按数据结构来存储和管理数据的计算机软件系统。

数据库中的数据具有的特点是:①数据库中的数据具有数据整体性,即数据库中的数据要保持自身完整的数据结构;②数据库中的数据具有数据共享性,不同的用户可以按各自的用法使用数据库中的数据,多个用户可以同时共享数据库中的数据资源。

3. 什么是数据库管理系统?它的主要功能是什么?答:答:数据库管理系统简称DBMS(Database Management System),它是专门用于管理数据库的计算机系统软件。

数据库管理系统能够为数据库提供数据的定义、建立、维护、查询和统计等操作功能,并完成对数据完整性、安全性进行控制的功能。

数据库管理系统的主要功能是数据存储、数据操作和数据控制功能。

其数据存储和数据操作是:数据库的定义功能,指为说明库中的数据情况而进行的建立数据库结构的操作;数据库建立功能,指将大批数据录入到数据库的操作,它使得库中含有需要保存的数据记录;数据库维护功能,指对数据的插入、删除和修改操作,其操作能满足库中信息变化或更新的需求;数据查询和统计功能,指通过对数据库的访问,为实际应用提供需要的数据。

数据库技术作业和答案(包括习题答案)(精品).doc

数据库技术作业和答案(包括习题答案)(精品).doc

第1章 绪论一、选择题1.关于数据库的说法不正确的是(A. 一个相互关联的数据集合B. 包含了关于某个企业或组织的信息C.是信息系统的核心和基础D.是一种数据管理的软件2.关于数据库系统的说法不正确的是()。

A. 数据库系统是指引入数据库技术后的计算机系统B.狭义地讲,数据库系统就是数据库管理系统C. 狭义地讲,数据库系统由数据库和数据库管理系统组成D. 广义地讲,数据库系统由数据库、数据库管理系统(及其开发工具)、应用系统、数据 库管理员和用户构成3. 下列不是数据库系统与文件系统的本质区别是()。

A. 数据库系统实现了整体数据结构化,而文件系统只考虑某个具体应用的数据结构B.数据具有较高的共享性,减少了冗余;文件之间基本不能共享,导致数据冗余度高C. 数据库系统中程序与数据的逻辑结构和物理存储相独立,而文件系统中数据逻辑结构 与文件结构紧密联系D.数据由数据库管理系统统一管理和控制4.事务(Transaction )是用户定义的一个数据库操作序列,下列()不是它的特性 A.原子性 B. 一致性C ・ 并发性D持续性 5.下列( )不是数据库中数据的主要结构。

A.数据文件B.数据字典C. 索引D. 散列6.数据库中存储的是()。

A.数据B. 数据间的联系C.数据及数据间的联系D. 数据模型7.下列()是存储在计算机内结构化的数据集合。

A.数据库系统C.数据库管理系统B.数据库 D.文件&下列( )是数据库的两级映像。

A.外模式/模式,模式/内模式B.模式/外模式,外模式/内模式C.模式/内模式,内模式/外模式D.外模式/内模式,内模式/安全模式9.数据的物理独立性是()实现的。

A.外模式/模式映像B.外模式/内模式映像C.模式/内模式映像D.内模式/外模式映像10.下列关于数据模型的说法不正确的是( ).A. 数据模型就是对现实世界数据特征的模拟和抽象B.数据模型是一个描述数据、数据联系、数据语义以及一致性约束的概念工具的集合C.仅反映数据本身D.数据模型是数据库系统的核心和基础,任何一个数据库管理系统均是基于某种数据模型的二、填空题1 .数据处理的核心问题是O2・数据库系统一般由组成。

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

数据库习题作业重点(第2-3-4章)7 2 3443计算R ∪S ,R-S ,R ∩S ,R ×S ,π3,2(S ),σB<’5’(R),R 2<2 解: R ∪S A B C R -S A B C R ∩S A B C 3 6 7 3 6 77232 5 7 2 5 7 7 2 34434 4 3345R ×S R.A R.B R.C S.A S.B S.C π3,2(S ) C B 3 6 7 3 4 5 5 4 3 6 7 7 2 3322 5 7345 2 5 7 7 2 3 7 2 3 3 4 5 7 2 3 7 2 3 4 4 3 3 4 5443723σB<’5’(R) A B C R⋈S R.A R.B R.C S.A S.B S.C7 2 3 7 2 3 3 4 54 4 3R⋈S A B C7 2 32.7 设有关系R和S:R A B S B Ca b b cc b e ad e b d计算R ⋈ S,R ⋈ S,σA=C(R×S),S ⋉ R。

2<2B<Ce ab2.8 假设关系U和V分别有m个元组和n个元组,给出下列表达式中可能的最小和最大的元组数量:⑴U∩V ⑵U∪V⑶U⋈V ⑷σF(U)×V (F为某个条件)⑸πL(U)-V (其中L为某属性集)解:操作最小元组数最大元组数⑴U∩V0min(m,n)⑵U∪V max(m,n)m+n⑶U⋈V0m×n⑷σF(U)×V0m×n⑸πL(U)-V0m2.17 设有三个关系:T(T#,TNMAE,TITLE)C(C#,CNAME,T#)S(S#,SNAME,AGE,SEX)SC(S#,C#,SCORE)试用关系代数表达式表示下列查询语句:①检索年龄小于17岁的女学生的学号和姓名。

②检索男学生所学课程的课程号和课程名。

③检索男学生所学课程的任课教师的工号和姓名。

④检索至少选修两门课的学生学号。

⑤检索至少有学号为S2和S4学生选修的课程的课程号。

⑥检索WANG同学不学的课程的课程号。

⑦检索全部学生都选修的课程的课程号与课程名。

⑧检索选修课程包含LIU老师所授全部课程的学生学号。

解:⑴πS#,SNAME(σAGE<’17’∧SEX=’F’(S))⑵Πc#,CNAME(σSEX='M'(S⋈SC⋈C))⑶ΠT#,TNAME(σSEX='M'(S⋈SC⋈C⋈T))⑷π1(σ1=4 ∧2≠5(SC×SC))⑸π2(σ1=’S2’∧4=’S4’∧2=5(SC×SC))⑹πC#(C)-πC#(σSNAME='WANG'(S⋈SC))⑺πC#,CNAME(C⋈(πS#,C#(SC)÷πS#(S)))⑻πS#,C#(SC)÷πC#(σTNAME='LIU'(C⋈T))2.21 在教学数据库的关系S、SC、C、T中,用户有一查询语句:检索女同学选修课程的课程名和任课教师名。

①试写出该查询的关系代数表达式。

②画出查询表达式的语法树。

③使用启发式优化算法,对语法树进行优化,并画出优化后的语法树。

解:【3.2】设教学数据库中有4个关系:教师关系T(T#,TNAME,TITLE)课程关系C(C#,CNAME,T#)学生关系S(S#,SNAME,AGE,SEX)选课关系SC(S#,C#,SCORE)试用SQL查询语句表示下列查询。

解:①检索年龄小于17岁的女学生的学号和姓名。

SELECT S#.SNAMEFROM SWHERE AGE<17 AND SEX=’F’②检索男学生所学课程的课程号和课程名。

SELECT C.C#,CNAME (连接查询方式)FROM S,SC,CWHERE S.S#=SC.S# AND SC.C#=C.C# AND SEX=’M’;③检索男学生所学课程的任课老师的工号和姓名。

SELECT T.T#, TNAMEFROM S,SC,C,TWHERE S.S#=SC.S# AND SC.C#=C.C# AND C.T#=T.T# AND SEX=’M’;④检索至少选修两门课程的学生学号。

SELECT DISTINCT X.S#FROM SC AS X, SC AS YWHERE X.S#=Y.S# AND X.C#!=Y.C#;⑤检索至少有学号为S2和S4的学生选修的课程的课程号。

SELECT DISTINCT X.C#FROM SC AS X, SC AS YWHERE X.S#=’S2’AND Y.S#=’S4’ AND X.C#=Y.C#;⑥检索WANG同学不学的课程的课程号。

SELECT C#FROM CWHERE NOT EXISTS(SELECT *FROM S, SCWHERE S.S#=SC.S# AND SC.C#=C.C# AND SNAME=’WANG’);⑦检索全部学生都选修的课程的课程号与课程名。

SELECT C#,CNAMEFROM CWHERE NOT EXISTS(SELECT *FROM SWHERE NOT EXISTS(SELECT *FROM SCWHERE S#=S.S# AND C#=C.C#));⑧检索选修课程包含LIU老师所授全部课程的学生学号。

法一:SELECT DISTINCT S#FROM SC AS XWHERE NOT EXISTS(SELECT *FROM C,TWHERE C.T#=T.T# AND TNAME=’LIU’AND NOT EXISTS(SELECT{FROM SC AS YWHERE Y.S#=X.S# AND Y.C#=C.C#));法二:SELECT DISTINCT S#FROM SC XWHERE NOT EXISTS((SELECT C# FROM C,TWHERE C.T#=T.T# AND TNAME='LIU’)EXCEPT(SELECT C# FROM SC Y WHERE Y.S#=X.S#));【3.7】试用SQL查询语句表达下列对第3.2题中4个基本表T、C、S、SC的查询。

①统计有学生选修的课程门数。

SELECT COUNT(DISTINCT C#) FROM SC;②求选修C4课程的女学生的平均年龄。

SELECT AVG(AGE)FROM S,SCWHERE S.S#=SC.S# AND C#=’C4’AND SEX=’F’:③求LIU老师所授的每门课程的平均成绩。

SELECT C.C#.AVG(SCORE)FROM SC,C,TWHERE SC.C#=C.C# AND C.T#=T.T# AND TNAME=’LIU’GROUP BY C.C#;④统计选修每门课程的学生人数(超过l0人的课程才统计)。

要求显示课程号和人数,查询结果按人数降序排列,若人数相同,则按课程号升序排列。

SELECT C#.COUNT(S#)FROM SCGROUP BY C#HAVING COUNT(*)>10ORDER BY 2 DESC,1;⑤检索学号比WANG同学大,而年龄比他小的学生姓名。

SELECT SNAMEFROM SWHERE S#>ALL(SELECT S# FROM SWHERE SNAME=’WANG’)AND AGE<ALL( SELECT AGEFROM SWHERE SNAME=’WANG);⑥在表SC中检索成绩为空值的学生的学号和课程号。

SELECT S#, C#FROM SCWHERE SCORE IS NULL;⑦检索姓名以L开头的所有学生的姓名和年龄。

SELECT SNAME, AGEFROM SWHERE SNAME LIKE ’L%’;⑧求年龄大于女同学平均年龄的男学生的姓名和年龄。

SELECT SNAME, AGEFROM SWHERE SEX=’M’AND AGE>(SELECT AVG(AGE)FROM SWHERE SEX=’F’);⑨求年龄大于所有女同学年龄的男学生的姓名和年龄。

SELECT SNAME, AGEFROM SWHERE SEX=‘M’AND AGE>ALL(SELECT AGEFROM SWHERE SEX=’F’);【3.12】解:①INSERT INTO CVALUES(‘C8’,’VC++’,’T6’);②法一:INSERT INTO FACULTY(TNAME)SELECT DISTINCT TNAMEFROM (SELECT TNAME,C.C#,AVG(SCORE)FROM T, C, SCWHERE T.T#=C.T# AND C.C#=SC.C#GROUP BY TNAME,C.C#)AS RESULT(TNAME,C#,AVG—SCORE) AS X WHERE 80<=ALL(SELECT AVG—SCOREFROM RESULT AS YWHERE Y.TNAME=X.TNAME);法二INSERT INTO FACULTY(TNAME)SELECT DISTINCT TNAMEFROM T, C, SCWHERE C.C#=SC.C# AND T.T#=C.T#AND T# NOT IN (SELECT T# FROM CWHERE C# IN(SELECT C# FROM SCGROUP BY C# HAVING AVG(SCORE)<=80))③DELETE FROM SC WHERE SCORE IS NULL;④DELETE FROM SCW HERE S# IN(SELECT S# FROM S WHERE SEX=’F’)AND C# IN(SELECT C# FROM C, T WHERE C.T#=T.T# AND TNAME=’LIU’);⑤UPDATE SCSET SCORE=60WHERE SCORE<60AND C# IN(SELECT C#FROM C WHERE CNAME=’MATHS’);⑥UPDATE SCSET SCORE=SCORE * 1.05WHERE S # IN(SELECT S# FROM S WHERE SEX='F’)AND SCORE<(SELECT AVG(SCORE) FROM SC);⑦用两个UPDATE语句实现:UPDATE SCSET SCORE=SCORE * 1.04WHERE C#=’C4’AND SCORE>70;UPDATE SCSET SCORE=SCORE * 1.05WHERE C#=’C4’AND SCORE<=70;这两个UPDATE语句的顺序不能颠倒。

相关文档
最新文档