
第三章数据库的标准语言8L 一、进择题 1.S01语言是()的语言,易学习 A)过程化 B)非过程化 C)格式亿 D)导航化 答案:B 2.S01语言是 A)层次数据库语言 B)网路数据库语言 C)关系数据库语言 D)非数据库语言 容案,C 3.s0L语言是 A.高级语言 B.宿主语言 C.江编语言 D.非过程化语言 答案:D 4.SL语言具有的功能是 A)关系规范化 B)数据定义、数据操纵、数据控制、数据在询 C)数据库系统设计 D)能绘制E-R图 答案:B 5。SQ1语言具有两种使用方式,分别称为交五式SqL和 A)提示式Sq B)多用户SL C)嵌入式SqL D)解释式S1 答案:C 6。下面列出的关于祝图的条目中,不正确的是 A。视图是外核式 B。视图是虚表 C。使用规图可以加快查海语句的执行速度 D,使用视图可以简化查询语句的第写 答案:C 7。S语言中实现数那库检素的语句是 A)SELECT B)INSERT C)UPDATE D)DELETE 答案:A 天非中物眼业技术学院信息工程系
第三章 数据库的标准语言 SQL 一、选择题 1.SQl 语言是()的语言,易学习 A)过程化 B)非过程化 C)格式化 D)导航化 答案:B 2.SQl 语言是 A)层次数据库语言 B)网络数据库语言 C)关系数据库语言 D)非数据库语言 答案:C 3.SQL 语言是 A.高级语言 B.宿主语言 C.汇编语言 D.非过程化语言 答案:D 4.SQL 语言具有的功能是 A)关系规范化 B)数据定义、数据操纵、数据控制、数据查询 C)数据库系统设计 D)能绘制 E-R 图 答案:B 5.SQl 语言具有两种使用方式,分别称为交互式 SQL 和 A)提示式 SQL B)多用户 SQL C)嵌入式 SQL D)解释式 SQL 答案:C 6.下面列出的关于视图的条目中,不正确的是 A.视图是外模式 B。视图是虚表 C.使用视图可以加快查询语句的执行速度 D.使用视图可以简化查询语句的编写 答案:C 7.SQL 语言中实现数据库检索的语句是 A)SELECT B)INSERT C)UPDATE D)DELETE 答案:A 天津中德职业技术学院 信息工程系 1

8.在SL语言查询语句中,SLT子句实现关系代数的 A.投影运算 且这择运算 C.连接运算 D,交运算 容案:A 9,在S网.语言查询语句中,距子句实现关系代数的 A投影运算 B.选择运算 C,连接运算 D.交运算 答案:B 10,在SL语言的SCT语句中,能实现投影操作的是 A.SELECT B.FRCM C。EE D.GBOUP BY 答案A 11.为在查询结果中去掉重复元组,要使用保留学 A.UNIQUE B.COUNT C.DISTINCT D.UNION 容案:C 12.假设学生关系S(S#,SNE,E),课程关系C(C#,CXE),学生选课关系SC(S#, C#,GRADE)。要查询这修“Conputer”误的男生姓名,将涉及到关系 A.S B.S.SC C.C.SC D.S.C.SC 答案:D 13.有关系S(S#,SXE,sX),C(C#,CXAE),SC(S年,C#,G限E),其中S#是学 生号,SNAME是学生姓名,SE以是性别。C#是课程号,CQN4WE是课程名称。要查询店修“数 据库”课的全体男生姓名的SQL.语句是SELECT SNAVE FROM5,C,SCE子句.这里的正距 子句的内容是 A.S.S#=SCS#andC.C#=SC.C#and5E='男”and CNAVE='数据库' 且.S.S·SCS#nd C.Ca·SC.CH and SE区in'男'and CNAME in'数据库 C,SEX’男”and CNAME’数据库' D.S.SEX-'男'and CNAME='数据眸 容案:A 14.有关系S(S#,SNAVE,SGE),C(C#,CNAE),SC(S#,C#,GRADE)。其中S#是学 生号,SXE是学生姓名,SGE是学生年龄,C#是误程号,CXE是课程名称。要查询选修 "CCESS”课的年龄不小于20的全体学生姓名的S0语)是SELECT SNAVE FROM S,C,SC HEE子句。这果的EE子句的内容是 天律中海职业技术学院信息工程系 2
8.在 SQL 语言查询语句中,SELECT 子句实现关系代数的 A.投影运算 B.选择运算 C.连接运算 D.交运算 答案:A 9.在 SQL 语言查询语句中,WHERE 子句实现关系代数的 A.投影运算 B.选择运算 C.连接运算 D.交运算 答案:B 10.在 SQL 语言的 SELECT 语句中,能实现投影操作的是 A.SELECT B.FROM C.WHERE D.GROUP BY 答案:A 11.为在查询结果中去掉重复元组,要使用保留字 A.UNIQUE B.COUNT C.DISTINCT D.UNION 答案:C 12.假设学生关系S(S#,SNAME,SEX),课程关系C(C#,CNAME),学生选课关系SC(S#, C#,GRADE)。要查询选修“Computer”课的男生姓名,将涉及到关系 A.S B.S,SC C.C,SC D.S,C,SC 答案:D 13.有关系S(S#,SNAME,SEX),C(C#,CNAME),SC(S#,C#,GRADE)。其中S#是学 生号,SNAME是学生姓名,SEX是性别, C#是课程号,CNAME是课程名称。要查询选修“数 据库”课的全体男生姓名的SQL语句是SELECT SNAME FROM S,C,SC WHERE子句。这里的WHERE 子句的内容是 A. S.S# = SC.S# and C.C# = SC.C# and SEX=’男’ and CNAME=’数据库’ B. S.S# = SC.S# and C.C# = SC.C# and SEX in’男’and CNAME in’数据库’ C. SEX ’男’ and CNAME ’ 数据库’ D. S.SEX=’男’ and CNAME=’ 数据库’ 答案:A 14.有关系S(S#,SNAME,SAGE),C(C#,CNAME),SC(S#,C#,GRADE)。其中S#是学 生号,SNAME是学生姓名,SAGE是学生年龄, C#是课程号,CNAME是课程名称。要查询选修 “ACCESS”课的年龄不小于 20 的全体学生姓名的SQL语句是 SELECT SNAME FROM S,C,SC WHERE子句。这里的WHERE子句的内容是 天津中德职业技术学院 信息工程系 2

A.S.S SC.S#and C.C=SC.C#and SAGE>=20 and CNAME='ACCESS' B.S.S#SC.S#and C.C=SC.C#and SAGE in)=20 and CNAME in 'ACCESS' C.SAGE in>20 and CNAME in ACCESS' D.SAGE>-20 and CNANE-*ACCESS' 答案!A 15.在S刘L语言中,子查询是 A延国单表中数据子集的查询语言 B,选取多表中字段子集的查面语句 C.选取单表中字段子集的查询语句 D,藏入到另一个查询语句之中的查询语句 容案:D 16.下列聚合橘数中不忽略空值(山l1)的是 A.SN(列名) B.K(列名) C.W℃(列名) D.COUNT ( 答案:D 17.S语言中。下列涉及空值的操作,不正确的是 A.AGE IS NULL B.AGE IS NOT NULL C.AGE=NULL D.NOT (AGE IS NULL) 答案:C 18.设有一个关系:DEPT(①0。N1E,如果要我出倒数第三个字母为,并且至少包含4 个字母的DNE,期查询条件子句应写成E距DNAME LIKE A‘-8 C'--- 答案:D 19.S语言集数据查询,数据操城,数据定文和爱据控制功能于一体,其中,CREATE,DP。 4LTE欧语句是实现煤种功能 A,数据查询 B.数据操纵 C数据定义 D,数据控制 答案:C 20.若用如下的SL语句创建一个st知det表,则可插入至表中的是 CREATE TABLE student (NO C(4)NOT NUILL, NAE C(8)NOT NULL, SEX C(2), AGE N(2)) A.(‘1031',‘曾华”,男,23) B.(1031”,‘曾华',ML.ML) 天律中德眼业技术学脑信息工程系
A.S.S# = SC.S# and C.C# = SC.C# and SAGE>=20 and CNAME=‘ACCESS’ B.S.S# = SC.S# and C.C# = SC.C# and SAGE in>=20 and CNAME in ‘ACCESS’ C.SAGE in>=20 and CNAME in ‘ACCESS’ D.SAGE>=20 and CNAME=’ ACCESS’ 答案:A 15.在SQL语言中,子查询是 A.返回单表中数据子集的查询语言 B.选取多表中字段子集的查询语句 C.选取单表中字段子集的查询语句 D.嵌入到另一个查询语句之中的查询语句 答案:D 16.下列聚合函数中不忽略空值(null)的是 A.SUN(列名) B.MAX(列名) C.AVG(列名) D.COUNT(*) 答案:D 17.SQL 语言中,下列涉及空值的操作,不正确的是 A.AGE IS NULL B.AGE IS NOT NULL C.AGE=NULL D.NOT(AGE IS NULL) 答案:C 18.设有一个关系:DEPT(DNO,DNAME),如果要找出倒数第三个字母为 W,并且至少包含 4 个字母的 DNAME,则查询条件子句应写成 WHERE DNAME LIKE A.'_ _W _%' B.'_ W _ %' C.'_ W _ _' D.' _ %W _ _' 答案:D 19.SQL语言集数据查询、数据操纵、数据定义和数据控制功能于一体,其中,CREATE、DROP、 ALTER语句是实现哪种功能 A.数据查询 B.数据操纵 C.数据定义 D.数据控制 答案:C 20.若用如下的 SQL 语句创建一个 student 表,则可插入至表中的是 CREATE TABLE student (NO C(4) NOT NULL, NAME C(8) NOT NULL, SEX C(2), AGE N(2)); A.(‘1031’,‘曾华’,男,23) B. (‘1031’,‘曾华’,NULL,NULL) 天津中德职业技术学院 信息工程系 3

C.(L,“增华,”男”,’23”) D.(“1031',山,’男”,23) 答案:B 21。下列语句中缘改表结构的是 A)ALTER B)CREATE C)UPDATE D)INSERT 答案」A 22.若要撒销数据库中已经存在的表S,可用 A.DELETE TABLE S B.DELETE S C.DROP TABLE S D.DROP S 容案:C 23.S01.语言中,副障一个表的金令是 A.CLEAR TABLE B.DROP TABLE C.DELETE TABLE D.REMOVE TABLE 答案:B 24,若要在基本表S中增加一CX(课程名),可用 A.ADD TABLE S (CN CHAR 8 ) B.ADO TABLE S ALTER (CN CHAR (8)) C.ALTER TARLE S ADD (CN CHAR (8 ) D.ALTER TABLE S (ADD CX CHAR (8 ) 答案:C 25.学生关系模式S(S#,Same,S,Age》,S的属性分别表示学生的学号、姓名、性别 年龄。要在表S中到降一个属性“年龄”,可选用的SL语句是 A.DELETE Age froa S B.ALTER TABLE S DROP Age C.UPDATE S Age D.ALTER TABLE S“hge' 答案1B 26.设关系数据库中一个表5的结构为5(5N,CN,rade),其中S为学生名,CN为课程名, 二者均为字符型:Td为成绩,数值型,取值范围0一100。若要把“张二的化学成绩80 分”括入S中,则可用 A.ADO INT0SVLE5(”张二”,·化学',·80°) B.INSERT INT0 S VALLES('张二',”化学”,·8O') C.A0IT0 S VALUES(”张二”,·化学',80) D.INSERT INT05VLEs('张二·,·化学”,8O) 答案,D 27.设关系数据库中一个表5的结构为:5(5N,CN,ade),其中5N为学生名,N为课程名, 二者均为字符型:Tde为成绩,数值型,取值范围0一100。若要更正王二的化学成绩为85 天非中物取业技术学院靠息工程系
C.(NULL,‘曾华’,’男’,’23’) D. (‘1031’,NULL,’男’,23) 答案:B 21.下列语句中修改表结构的是 A)ALTER B)CREATE C)UPDATE D)INSERT 答案:A 22.若要撤销数据库中已经存在的表S,可用 A.DELETE TABLE S B.DELETE S C.DROP TABLE S D.DROP S 答案:C 23.SQL 语言中,删除一个表的命令是 A.CLEAR TABLE B.DROP TABLE C.DELETE TABLE D.REMOVE TABLE 答案:B 24.若要在基本表S中增加一列CN(课程名),可用 A. ADD TABLE S(CN CHAR(8)) B. ADD TABLE S ALTER(CN CHAR(8)) C. ALTER TABLE S ADD(CN CHAR(8)) D. ALTER TABLE S (ADD CN CHAR(8)) 答案:C 25.学生关系模式 S( S#,Sname,Sex,Age),S的属性分别表示学生的学号、姓名、性别、 年龄。要在表S中删除一个属性“年龄”,可选用的SQL语句是 A.DELETE Age from S B.ALTER TABLE S DROP Age C.UPDATE S Age D.ALTER TABLE S ‘Age’ 答案:B 26.设关系数据库中一个表S的结构为S(SN,CN,grade),其中SN为学生名,CN为课程名, 二者均为字符型;grade为成绩,数值型,取值范围 0-100。若要把“张二的化学成绩 80 分”插入S中,则可用 A. ADD INTO S VALUES(’张二’,’化学’,’80’) B. INSERT INTO S VALUES(’张二’,’化学’,’80’) C. ADD INTO S VALUES(’张二’,’化学’,80) D. INSERT INTO S VALUES(’张二’,’化学’,80) 答案:D 27.设关系数据库中一个表S的结构为:S(SN,CN,grade),其中SN为学生名,CN为课程名, 二者均为字符型;grade为成绩,数值型,取值范围 0-100。若要更正王二的化学成绩为 85 天津中德职业技术学院 信息工程系 4

分,则可用 A.Lm4 TE S SET grade-85EE5W-'王二'ADCW-'化学 B.UPDATE S SET grade=”85'WHE题SX=”王二”ADCN='化学 C.PDATE grade=85EESN-’王二”ADCX-”化学 D,IPDATE grade=85'HERE SN-='王二'AND CN-='化学' 答案:A 28.若用如下的Sq语句创建了一个表SC:CREATE TABLE SC(S=CHR(6)N0TM山.C# CHAR《3)NOT NULL,S0 ORE INTEGER,N0 TE CHAR(20):向SC表插入年下行到,()行可 以按括入 A,(”201009',111”,60.必修) B.(”200823',101”,N山,ML) C.(L,”103',80,”选修’) D.(”201132',NL,86.·,) 答案:B 29.如下的数据库的表中,若职工表的主关健字是职工号,部门表的主关健字是部门号,S 操作中不能执行的是 4.从职工表中剩除行(025,“王芳',“03',720) B. 将行(“005',‘乔兴',04',750》插入到职工表中 C. 将职工号为‘001'的工资改为700 D. 将职工号为‘38”的部门号改为‘03 积工表 部门表 取工号 取工名 部门号 工资 部门号 部门名 主任 001 李红 01 580 01 人事处 高平 005 刘军 01 670 02 则务处 蒋华 025 王芳 03 720 03 教务处 许红 038 张强 02 650 04 学生处 杜瑞 答案:B 30。S语言集数据查询、数据操作、数据定义,和数据控制功能于一体,语句ALTER TABLE 实现厚类功陵 A,数据查询 B。数据操纵 C。数据定义 D.数据控制 答案!C 31.在视图上不能完成的操作是 A.更新栈图 B.查询 C在祝图上定义新的表 D,在视图上定义新的视图 答案:C 32.S@1语言中,别除一个混图的命令是 A.DELETE B.DROP C.CLEAR 天律中袖职业技术学院信息工程到
分,则可用 A. UPDATE S SET grade=85 WHERE SN=’王二’ AND CN=’化学’ B. UPDATE S SET grade=’85’ WHERE SN=’王二’ AND CN=’化学’ C.UPDATE grade=85 WHERE SN=’王二’ AND CN=’化学’ D.UPDATE grade=’85’ WHERE SN=’王二’ AND CN=’化学’ 答案:A 28.若用如下的SQL语句创建了一个表SC: CREATE TABLE SC (S# CHAR(6) NOT NULL,C# CHAR(3) NOT NULL,SCORE INTEGER,NOTE CHAR(20));向SC表插入如下行时,( )行可 以被插入 。 A. (’201009’,’111’,60,必修) B. (’200823’,’101’,NULL,NULL) C. (NULL,’103’,80,’选修’) D. (’201132’,NULL,86,’ ’) 答案:B 29.如下的数据库的表中,若职工表的主关键字是职工号,部门表的主关键字是部门号,SQL 操作中不能执行的是 A. 从职工表中删除行(‘025’,‘王芳’,‘03’,720) B. 将行(‘005’,‘乔兴’,‘04’,750)插入到职工表中 C. 将职工号为‘001’的工资改为 700 D. 将职工号为‘038’的部门号改为‘03’ 职工表 部门表 职工号 职工名 部门号 工资 部门号 部门名 主任 001 005 025 038 李红 刘军 王芳 张强 01 01 03 02 580 670 720 650 01 02 03 04 人事处 财务处 教务处 学生处 高平 蒋华 许红 杜琼 答案:B 30.SQL 语言集数据查询、数据操作、数据定义、和数据控制功能于一体,语句 ALTER TABLE 实现哪类功能 A.数据查询 B.数据操纵 C.数据定义 D.数据控制 答案:C 31.在视图上不能完成的操作是 A.更新视图 B.查询 C.在视图上定义新的表 D.在视图上定义新的视图 答案:C 32. SQL语言中,删除一个视图的命令是 A.DELETE B.DROP C.CLEAR 天津中德职业技术学院 信息工程系 5

D.REMOVE 容案:B 33.在SqL语言中的视图VTE是数据库的 A外慎式 B棱式 C.内模式 D.存储模式 答案:A 34.下列的5语句中,()不是数据定义语句. A.CREATE TABLE B.DROP VIEW C.CREATE VIEW D.GRANT 答案:D 35.SQ语言集数据查询,数据操作,数据定文,和数据控制功能于一体,语句I5ERI.D厄ETE. PATE实现下列爆类功能 A.数据查询 B。数据操纵 C。数据定义 D。数据控制 容案1B 36。在关系数暴库系统中,为了简化用户的查询操作,而又不增加数据的存储空间,常用的 方法是创建 A。另一个表 B.。游标 C.视图 D.案引 容案:C 37.S语言中,用于实现安全性控制的语句是 A.COMDIIT B.GRANT C.ROLLBACK D.SAFE 答案:B 二、填空题 1.祝图是一个虚表,它是从 中导出的表。在数据库中。具存放栈图 的 ,不存截 答案:一个或几个基本表、定义、视图对应的数据 2SQL的中文全称是 答案,结构化查询语言 3.S0L语言除了具有数据查询和数据操纵功能之外,还具有 和 的功能,它 是一个综合性的功能强大的请言, 容案:数据定义数据控制 天律中德眼业技术学院信息工程系
D.REMOVE 答案:B 33.在SQL语言中的视图VIEW是数据库的 A.外模式 B.模式 C.内模式 D.存储模式 答案:A 34.下列的SQL语句中,( )不是数据定义语句。 A.CREATE TABLE B.DROP VIEW C.CREATE VIEW D.GRANT 答案:D 35.SQL 语言集数据查询、数据操作、数据定义、和数据控制功能于一体,语句 INSERT、DELETE、 UPDATE 实现下列哪类功能 A.数据查询 B。数据操纵 C.数据定义 D。数据控制 答案:B 36.在关系数据库系统中,为了简化用户的查询操作,而又不增加数据的存储空间,常用的 方法是创建 A. 另一个表 B. 游标 C. 视图 D.索引 答案:C 37.SQL 语言中,用于实现安全性控制的语句是 A.COMMIT B.GRANT C.ROLLBACK D.SAFE 答案:B 二、填空题 1.视图是一个虚表,它是从 中导出的表。在数据库中,只存放视图 的 ,不存放 答案:一个或几个基本表、定义、视图对应的数据 2 .SQL的中文全称是________________。 答案:结构化查询语言 3 .SQL语言除了具有数据查询和数据操纵功能之外,还具有________和________的功能,它 是一个综合性的功能强大的语言。 答案:数据定义 数据控制 天津中德职业技术学院 信息工程系 6

4.在关系数据库标准语言SQOL中,实暖数据索的语句命令是 答案,SELECT 5.在S0L语言的结构中, 有对应的物理存储,面没有对应的物理存储。 答案:基本表程图 6.视图是从 中导出的表,数据库中实际存放的是钱图的 答案:基木表成视图定义 7,关系数据操作语言(DML》的特点是:操作对象与结果均为美系、操作的 言一体化并且是建立在数学理论基础之上, 答案:非过程性强 三、简答题 1.试递5迎语言的特点. 答案: ①蜂合统一,SL语言集数据定义语言DL,数据授纵谱言M,数据控制语言D的功能于 一体。 ②高度非过程化。用5语言进行数据操作,只要提出“做什么”,而无须指明“怎么做”, 因此无活了解存取路径。存取路径的这择以及S语句的操作过程由系饶自动完成。 图面向集合的操作方式。5Q语言采用集合操作方式,不仅操作对象、查找结果可以是元组 的集合,而且一次插入、副隐、更新操作的对象也可以是元组的集合。 ④以同一种语法结构提供两种使用方式。SqL语言既是自含式语言,又是帐入式语言。作为 白含式语言,它能够独立地用于联机交互的使用方式,也能够嵌入到高级语言程序中,供程 序员设计程序时使用。 ⑤语言简捷。易学易用。 2,试述50的定义功能. 答案: 5QL的数据定义功能包括定义表、定文视图和定义索引。 SL语言使用C证ATE TABLE语句建立基本表,ALTER TABLE语句修:改基本表定义,DOP TAE语句酬鲶基本表:使用CREATE IND语句建立索引,DROP INDE氢语句别除索引:使 用C配ATE VIE金令建立视图,DROP VIEY语句副除视图。 3.在联入式SL中,如何区分SL语句和主诵言语句7 答案: 在嵌入方式下,SL语句在怅入主语言的程序时其前极如EXEC SQL:其结束处用 END_EXEC或用分号“:” 4,在能入式S中,如何解决数据库工作单元与源程序工作单元之间的通信? 案: 数据库工作单元与源程序工作单元之间的通信主要包括:(1)SL通信区SqCA,用米 向主语言传递SL语句的执行状态信息,使主语言能够根据此信息控制程序流程。(2)主变 量(ost Variab1e),1)用来实现主语言白SL语句提供参数。2)将SL语句查询数据 库的结果交主语言进一步处理,(3)静标《Crs0r),解决集合性操作语言与过程性操作语 言的不匹配通过游标逐一获取记录,并赋给主变量,交由主语言进一步处理。数据的工作单 元和程序工作单元之间通信的主要方式有:主语言通过变量向SQ语句提供参数:S吼语句 的当前工作状态和运行环境数据要反馈给应用程序。 5。在嵌入式S中,如何协调SL语言的集合处理方式和主语言的单记录处理方式1 答案: 天非中物眼业技术学院管息工程系
4 .在关系数据库标准语言SQL中,实现数据检索的语句命令是________。 答案:SELECT 5 .在SQL语言的结构中,________有对应的物理存储,而________没有对应的物理存储。 答案:基本表 视图 6 .视图是从________中导出的表,数据库中实际存放的是视图的________。 答案:基本表或视图 定义 7 .关系数据操作语言(DML)的特点是:操作对象与结果均为关系、操作的________、语 言一体化并且是建立在数学理论基础之上。 答案:非过程性强 三、简答题 1.试述 SQL 语言的特点。 答案: ①综合统一。SQL语言集数据定义语言DDL、数据操纵语言DML、数据控制语言DCL的功能于 一体。 ②高度非过程化。用SQL语言进行数据操作,只要提出“做什么”,而无须指明“怎么做”, 因此无需了解存取路径,存取路径的选择以及SQL语句的操作过程由系统自动完成。 ③面向集合的操作方式。SQL语言采用集合操作方式,不仅操作对象、查找结果可以是元组 的集合,而且一次插入、删除、更新操作的对象也可以是元组的集合。 ④以同一种语法结构提供两种使用方式。SQL语言既是自含式语言,又是嵌入式语言。作为 自含式语言,它能够独立地用于联机交互的使用方式,也能够嵌入到高级语言程序中,供程 序员设计程序时使用。 ⑤语言简捷,易学易用。 2 .试述 SQL 的定义功能。 答案: SQL 的数据定义功能包括定义表、定义视图和定义索引。 SQL 语言使用 CREATE TABLE 语句建立基本表,ALTER TABLE 语句修改基本表定义,DROP TABLE 语句删除基本表;使用 CREATE INDEX 语句建立索引, DROP INDEX 语句删除索引;使 用 CREATE VIEW 命令建立视图,DROP VIEW 语句删除视图。 3.在嵌入式 SQL 中,如何区分 SQL 语句和主语言语句? 答案: 在嵌入方式下,SQL 语句在嵌入主语言的程序时其前缀加 EXEC SQL ;其结束处用 END_EXEC 或用分号“;”。 4.在嵌入式 SQL 中,如何解决数据库工作单元与源程序工作单元之间的通信? 答案: 数据库工作单元与源程序工作单元之间的通信主要包括:(1)SQL 通信区 SQLCA,用来 向主语言传递 SQL 语句的执行状态信息,使主语言能够根据此信息控制程序流程。(2)主变 量(Host Variable),1)用来实现主语言向 SQL 语句提供参数。 2)将 SQL 语句查询数据 库的结果交主语言进一步处理。(3)游标(Cursor),解决集合性操作语言与过程性操作语 言的不匹配通过游标逐一获取记录,并赋给主变量,交由主语言进一步处理。数据的工作单 元和程序工作单元之间通信的主要方式有:主语言通过变量向 SQL 语句提供参数;SQL 语句 的当前工作状态和运行环境数据要反馈给应用程序。 5.在嵌入式 SQL 中,如何协调 SQL 语言的集合处理方式和主语言的单记录处理方式? 答案: 天津中德职业技术学院 信息工程系 7

使用游标解决S一次一集合的慢作与主语言一次一记录操作的矛盾,游标是系统为用 户开设的一个数据缓冲区,存放S语句的执行结果。用户可以通过游标逐一获取记录,并 将记录赋给主变量,交给主语言做进一步处理, 6。什么是燕本表?什么是视图?两者的区别和联系是什么? 答案: 基本表是本身独立存在的表,在SL中一个关系就对应一个表。.视图是从一个或几个基 本表导出的表。视图本身不验立存储在数据库中,是一个虚表。即数据库中只存放视图的定 义而不存故视图对应的数据,这些数据仍存放在导出视图的基本表中。程图在概念上与基本 表等同,用户可以如同基本表郑样使用规图,可以在找图上再定文税图。 T。试途视图的优点, 容案: ①视图能够简化用户的操作。 ②视图使用户能以多种角度看传同一数据。 ③祝图对重构数据库提供了一定程度的逻辑独立性 ④视图佳够对机密数据提供安全保护。 8.设有知图所示的三个关系, A (AM ANAME WOTY CITY), B (B#BNAME PRICE),AB (A#B#QTY) 其中各属性含文如下:株(商店代号)、N4(商店名)、和TY(店员人敷)、C1TY(所在 城市)、m(商品号)、WE(商品名称)、限ICE(价格入、qTY(商品数量)。试用SL语 言写出下列查询。 (1)找出店员为人量不超过100人或者在长沙市的所有商店的代号和商店名 答案: SELECT A#.ANAME FROM A E距QTY(-1O00 R CITY-”长沙”: (2)找出供应书包的商店名 答案: SELECT A.ANAME FROM A.B.AB ER距AA#-8.A供ADRB-A级B融AR.WE-”书包“ 9。有三个表即学生表5、课程表C和学生选课表SC,它们结构如下: S (SM,SN,SEX.AGE,DEPT) C (CH,CN) SC (S#.C#.GRADE) 其中:S为学号,S为姓名,SX为姓名,GE为年龄,DEPT为系别,C为课程号,C为 课程名,G成AE为成绩。 (1)检案所有比“王华”年龄大的学生姓名、年龄和性别, 答案: SELECT SN.AGE.SEX FROM S HERE AGE>(SELECT AGE FROM S H距SN”王华”) (2)检素选修课程“C位”的学生中成绩最高的学生的学号。 答案: SELECT S=FROM SC HEEC=”C2”AND GRADE)=ALL 天律中海职业技术学院信息工程系
使用游标解决 SQL 一次一集合的操作与主语言一次一记录操作的矛盾。游标是系统为用 户开设的一个数据缓冲区,存放 SQL 语句的执行结果。用户可以通过游标逐一获取记录,并 将记录赋给主变量,交给主语言做进一步处理。 6.什么是基本表?什么是视图?两者的区别和联系是什么? 答案: 基本表是本身独立存在的表,在 SQL 中一个关系就对应一个表。视图是从一个或几个基 本表导出的表。视图本身不独立存储在数据库中,是一个虚表。即数据库中只存放视图的定 义而不存放视图对应的数据,这些数据仍存放在导出视图的基本表中。视图在概念上与基本 表等同,用户可以如同基本表那样使用视图,可以在视图上再定义视图。 7.试述视图的优点。 答案: ①视图能够简化用户的操作。 ②视图使用户能以多种角度看待同一数据。 ③视图对重构数据库提供了一定程度的逻辑独立性。 ④视图能够对机密数据提供安全保护。 8.设有如图所示的三个关系, A(A# ANAME WQTY CITY), B(B# BNAME PRICE),AB(A# B# QTY) 其中各属性含义如下:A#(商店代号)、ANAMR(商店名)、WQTY(店员人数)、CITY(所在 城市)、B#(商品号)、BNAME(商品名称)、PRICE(价格)、QTY(商品数量)。试用 SQL 语 言写出下列查询。 (1)找出店员为人数不超过 100 人或者在长沙市的所有商店的代号和商店名 答案: SELECT A#,ANAME FROM A WHERE WQTY(SELECT AGE FROM S WHERE SN=”王华”) (2)检索选修课程“C2”的学生中成绩最高的学生的学号。 答案: SELECT S# FROM SC WHERE C#=”C2” AND GRADE>=ALL 天津中德职业技术学院 信息工程系 8

(SELECT GRADE FROM SC HEC=”C2”) (3》检索学生姓名及其所选修课程的课程号和成绩。 答案: SELECT S.SN SC.C=,SC.GRADE FROM S.SC WHERE S.S#-SC.S# (4)检餐选修四门以上课程的学生总成绩(不统计不及格的课程),并要求技总成靖的降 序挂列出来。 答案: SELECT S#,SUM(GRADE)FROM SC VHERE GRADE-60 GHOUP BY S#HAVING COUNT(*)=4 ORDER BY 2 DESC 10.设有关系模式: S邻(SN,SXE,CITT),SB表示供应商,S为供应商代号,SNE为供应商名字,CITY 为供应商所在城市,主关健字为SN, 阳(PW,PWe,COR,阳IGT),PB表示零件,W为零件代号,PE为零件名字, C0R为零件额色,E1GHT为零件重量,主关健字为W。 JB(N,E,CITY),JB表示工程,N为工程编号,NE为工程名学,CITT为工 程所在城市,主关健字为N, 5PB(SX,N,JN,QT),SB表示供应关系,qTY表示提供的琴件数量。 (1)取出所有工程的全部细节: 答案: SL.ECT◆FROM JB (2)取出所在城市为上海的所有工程的全部细节: 答案: SELECT多FROM JB WHERE CI=“上海" (3)取出重量最的零件代号: 容案: SELECT PN FROM PB EEIT-《SELECT MIN(EICΠ)FWPB) (4)取出为工程J1提供零件的供应商代号: 答案: SELECT SN FROM SPJB WHERE JN-"J1" (5)取出为工种J1提供零件P1的供应商代号: 答案: SELECT SN FROM SPJB HEJN‘J1”AND华PI" (6)取出由供应商S1提供零件的工程名称: 容案1 SELECT JB.JNAME FROM JB.SPJB WHERE JB.JN-SPJB.JN AND SPJB.SN'S1" (T)取出供应商S1提供的零件的颗色: 人事中物职业技术学院信息工程系
(SELECT GRADE FROM SC WHERE C#=”C2”) (3)检索学生姓名及其所选修课程的课程号和成绩。 答案: SELECT S.SN,SC.C#,SC.GRADE FROM S, SC WHERE S.S#=SC.S# (4)检索选修四门以上课程的学生总成绩(不统计不及格的课程),并要求按总成绩的降 序排列出来。 答案: SELECT S#, SUM(GRADE) FROM SC WHERE GRADE>=60 GROUP BY S# HAVING COUNT(*)>=4 ORDER BY 2 DESC 10.设有关系模式: SB(SN,SNAME,CITY),SB 表示供应商,SN 为供应商代号,SNAME 为供应商名字,CITY 为供应商所在城市,主关键字为 SN。 PB(PN,PNAME,COLOR,WEIGHT),PB 表示零件,PN 为零件代号,PNAME 为零件名字, COLOR 为零件颜色,WEIGHT 为零件重量,主关键字为 PN。 JB(JN,JNAME,CITY),JB 表示工程,JN 为工程编号,JNAME 为工程名字,CITY 为工 程所在城市,主关键字为 JN。 SPJB(SN,PN,JN,QTY),SPJB 表示供应关系,QTY 表示提供的零件数量。 (1)取出所有工程的全部细节; 答案: SELECT * FROM JB (2)取出所在城市为上海的所有工程的全部细节; 答案: SELECT * FROM JB WHERE CITY=“上海” (3)取出重量最的零件代号; 答案: SELECT PN FROM PB WHERE WEIGHT=(SELECT MIN(WEIGHT) FROM PB) (4)取出为工程 J1 提供零件的供应商代号; 答案: SELECT SN FROM SPJB WHERE JN=“J1” (5)取出为工种 J1 提供零件 P1 的供应商代号; 答案: SELECT SN FROM SPJB WHERE JN=‘J1’AND PN=‘P1’ (6)取出由供应商 S1 提供零件的工程名称; 答案: SELECT JB.JNAME FROM JB,SPJB WHERE JB.JN=SPJB.JN AND SPJB.SN=’S1’ (7)取出供应商 S1 提供的零件的颜色; 天津中德职业技术学院 信息工程系 9

答案: SELECT DISTINCT PB.COLOR FROM PB,SPJB EB.PW=SPJB.PN AND S守JB.5华'S1” (8)取出为工程J1和J2提供零件的供应商代号: 答案: SELECT DISTINCT SN FROM SPJB EJ作'J1”0RJ华'J2 (9)取出为工程J1提供红色零件的供应商代号: 容案 SELECT DISTINCT SPJB.SX FROM SPJB,PB HERE PB.PN-SPJB.PN AND SPJB..JM”JI'ANDP阳COOR-'红 (10)取为所在城市为上海的工程提供零件的供应商代号: 答案: SELECT DISTINCT SPJB.SN FROM SPJB,JB RE SPJB.JJB.JN AND JB.CITY='上海' (11)取出为所在戴市为上海或北京的工程提供红色零件的供应商代号: 密案 SELECT SPJB.SN FROM PB,JB,SPJB ERE SPJB.PN-P雅N AND JB.JN-SPJB.JN AND P阳.COOR'红”AND(JB.CITY-' 上海'0 R JB.CITY='北京”) (12)取出供应育与工程所在城市相同的供应街提供的零件代号: 答案: SELECT DISTINCT SPJB.PN FROM SB.JB.SPJB WHERE SB.SN-SPJB.SN AND JB.JN-SPJB.JN AND SB.CITY-JB.CITY (13》取出上海的供应商提供给上海的任一工程的零件的代号: 答案: SELECT SPJB.PN FROM SB.JB,SPJB FES8.SN-SPJB.SN AND JB.JN-SPJB.JN AND SB.CITY-'上海·AD JB,CIT='上海' (14)取出至少由一个和工程不在同一城市的供应商提供零件的工程代号: 答案: SELECT DISTINCT SPJB.JN FROM SB,JB,SPJB WHERE SB.SN-SPJB.SN AND JB.JN-SPJB.JN AND SB.CITY!-JB.CITY (15)取出上海供应商不提供任问零件的工程的代号: 案: SELECT DISTINCT JN FROM SPJB WHERE JN NOT IN SELECT DISTINCT SPJB.JN FROM SB,SPJB ERE SB.SN-SPJB.SN AND SB.CITY=’上海') (16》取出这样一些供应商代号,它们能够是供至少一种由红零件的供应商提供的零件 答案: SELECT DISTINCT SPJB.SN FROM PB,SPJB WHERE SPJB.PN IN (SELECT SPJB.PX FROM SPJB,SB,PB 天非中物取业技术学院信息工程系 10
答案: SELECT DISTINCT PB.COLOR FROM PB, SPJB WHERE PB.PN=SPJB.PN AND SPJB.SN=’S1’ (8)取出为工程 J1 和 J2 提供零件的供应商代号; 答案: SELECT DISTINCT SN FROM SPJB WHERE JN=’J1’ OR JN=’J2’ (9)取出为工程 J1 提供红色零件的供应商代号; 答案: SELECT DISTINCT SPJB.SN FROM SPJB, PB WHERE PB.PN=SPJB.PN AND SPJB.JN=’J1’ AND PB.COLOR=’红’ (10)取为所在城市为上海的工程提供零件的供应商代号; 答案: SELECT DISTINCT SPJB.SN FROM SPJB, JB WHERE SPJB.JN=JB.JN AND JB.CITY=’上海’ (11)取出为所在城市为上海或北京的工程提供红色零件的供应商代号; 答案: SELECT SPJB.SN FROM PB, JB, SPJB WHERE SPJB.PN=PB.PN AND JB.JN=SPJB.JN AND PB.COLOR=’红’ AND (JB.CITY=’ 上海’ OR JB.CITY=’北京’) (12)取出供应商与工程所在城市相同的供应商提供的零件代号; 答案: SELECT DISTINCT SPJB.PN FROM SB, JB, SPJB WHERE SB.SN=SPJB.SN AND JB.JN=SPJB.JN AND SB.CITY=JB.CITY (13)取出上海的供应商提供给上海的任一工程的零件的代号; 答案: SELECT SPJB.PN FROM SB, JB, SPJB FWHERE SB.SN=SPJB.SN AND JB.JN=SPJB.JN AND SB.CITY=’ 上 海 ’ AND JB.CITY=’上海’ (14)取出至少由一个和工程不在同一城市的供应商提供零件的工程代号; 答案: SELECT DISTINCT SPJB.JN FROM SB, JB, SPJB WHERE SB.SN=SPJB.SN AND JB.JN=SPJB.JN AND SB.CITY!=JB.CITY (15)取出上海供应商不提供任何零件的工程的代号; 答案: SELECT DISTINCT JN FROM SPJB WHERE JN NOT IN ( SELECT DISTINCT SPJB.JN FROM SB, SPJB WHERE SB.SN=SPJB.SN AND SB.CITY=’上海’) (16)取出这样一些供应商代号,它们能够提供至少一种由红零件的供应商提供的零件 答案: SELECT DISTINCT SPJB.SN FROM PB, SPJB WHERE SPJB.PN IN (SELECT SPJB.PN FROM SPJB, SB, PB 天津中德职业技术学院 信息工程系 10