您好,欢迎访问三七文档
第三章SQL一、选择题(1)SQL语言是()的语言,易学习。A.过程化B.非过程化C.格式化D.导航式(2)SQL语言具有()的功能。A.关系规范化、数据操纵、数据控制B.数据定义、数据操纵、数据控制C.数据定义、关系规范化、数据控制D.数据定义、关系规范化、数据操纵(3)SQL语言的数据操作语句包括SELECT、INSERT、UPDATE和DELETE等。其中最重要的,也是使用最频繁的语句是()。A.SELECTB.INSERTC.UPDATED.DELETE(4)设有关系R(A,B,C)和S(C,D),与关系代数表达式πA,B,D(σR.C=S.C(R×S))等价的SQL语句是()。A.SELECT*FROMR,SWHERER.C=S.CB.SELECTA,B,DFROMR,SWHERER.C=S.CC.SELECTA,B,DFROMR,SWHERER=SD.SELECTA,BFROMRWHERE(SELECTDFROMSWHERER.C=S.C.(5)设关系R(A,B,C),与SQL语句“SELECTDISTINCTAFROMRWHEREB=17”等价的关系代数表达式是()。A.πA(σB=17(R))B.σB=17(πA(R))C.σB=17(πA,C(R))D.πA,C(σB=17(R))下面第(8)~(12)题,基于“学生-选课-课程”数据库中的3个关系:S(S#,SNAME,SEX,DEPARTMENT),主码是S#C(C#,CNAME,TEACHER),主码是C#SC(S#,C#,GRADE),主码是(S#,C#)(8)在下列关于保持数据库完整性的叙述中,哪一个是不正确的?()A.向关系SC插入元组时,S#和C#都不能是空值(NULL)B.可以任意删除关系SC中的元组C.向任何一个关系插入元组时,必须保证该关系主码值的唯一性D.可以任意删除关系C中的元组(9)查找每个学生的学号、姓名、选修的课程名和成绩,将使用关系()A.只有S,SCB.只有SC,CC.只有S,CD.S,SC,C(10)若要查找姓名中第一个字为“王”的学生的学号和姓名,则下面列出的SQL语句中,哪个(些)是正确的?()Ⅰ.SELECTS#,SNAMEFROMSWHERESNAME='王%'Ⅱ.SELECTS#,SNAMEFROMSWHERESNAMELIKE'王%'Ⅲ.SELECTS#,SNAMEFROMSWHERESNAMELIKE'王_'A.ⅠB.ⅡC.ⅢD.全部(11)若要“查询选修了3门以上课程的学生的学号”,则正确的SQL语句是()。A.SELECTS#FROMSCGROUPBYS#WHERECOUNT(*)3B.SELECTS#FROMSCGROUPBYS#HAVINGCOUNT(*)3C.SELECTS#FROMSCORDERBYS#WHERECOUNT(*)3D.SELECTS#FROMSCORDERBYS#HAVINGCOUNT(*)3(12)若要查找“由张劲老师执教的数据库课程的平均成绩、最高成绩和最低成绩”,则将使用关系()。A.S和SCB.SC和CC.S和CD.S、SC和C下面第(13)~(16)题基于这样的3个表,即学生表S、课程表C和学生选课表SC,它们的关系模式如下:S(S#,SN,SEX,AGE,DEPT)(学号,姓名,性别,年龄,系别)C(C#,CN)(课程号,课程名称)SC(S#,C#,GRADE)(学号,课程号,成绩)(13)检索所有比“王华”年龄大的学生姓名、年龄和性别。下面正确的SELECT语句是()。A.SELECTSN,AGE,SEXFROMSWHEREAGE(SELECTAGEFROMSWHERESN='王华')B.SELECTSN,AGE,SEXFROMSWHERESN='王华'C.SELECTSN,AGE,SEXFROMSWHEREAGE(SELECTAGEWHERESN='王华')D.SELECTSN,AGE,SEXFROMSWHERESGE王华.AGE(14)检索选修课程“C2”的学生中成绩最高的学生的学号。正确的SELECT语句是()。A.SELECTS#FROMSCWHEREC#='C2'ANDGRADE=ALL(SELECTGRADEFROMSCWHEREC#='C2')B.SELECTS#FROMSCWHEREC#='C2'ANDGRADEIN(SELECTGRADEFROMSCWHEREC#='C2')C.SELECTS#FROMSCWHEREC#='C2'ANDGRADENOTIN(SELECTGRADEGORMSCWHEREC#='C2')D.SELECTS#FROMSCWHEREC#='C2'ANDGRADE=(SELECTGRADEFROMSCWHEREC#='C2')(15)检索学生姓名及其所选修课程的课程号和成绩。正确的SELECT语句是()。A.SELECTS.SN,SC.C#,SC.GRADEFROMSWHERES.S#=SC.S#B.SELECTS.SN,SC.C#,SC.GRADEFROMSCWHERES.S#=SC.GRADEC.SELECTS.SN,SC.C#,SC.GRADEFROMS,SCWHERES.S#=SC.S#D.SELECTS.SN,SC.C#,SC.GRADEFROMS,SC(16)检索4门以上课程的学生总成绩(不统计不及格的课程),并要求按总成绩的降序排列出来。正确的SELECT语句是()。A.SELECTS#,SUM(GRAGE)FROMSCWHEREGRADE=60GROUPBYS#ORDERBYS#HAVINGCOUNT(*)=4B.SELECTS#,SUM(GRADE)FROMSCWHEREGRADE=60GROUPBYS#HAVINGCOUNT(*)=4ORDERBY2DESCC.SELECTS#,SUM(GRADE)FROMSCWHEREGRADE=60HAVINGCOUNT(*)=4GROUPBYS#ORDERBY2DESCD.SELECTS#,SUM(GRADE)FROMSCWHEREGRADE=60HAVINGCOUNT(*)=4GROUPBYS#ORDERBY2(17)如下面的数据库的表所示,若职工表的主关键字是职工号,部门表的主关键字是部门号,SQL操作()不能执行。A.从职工表中删除行('025','王芳','03',720)B.将行('005','乔兴','04',720)插入到职工表中C.将职工号为'001'的工资改为700D.将职工号为'038'的部门号改为'03'职工号职工名部门号工资部门号部门名主任001李红0158001人事处高平005刘军0167002财务处蒋华025王芳0372003教务处许红038张强0265004学生处杜琼(19)有关系S(S#,SNAME,SAGE),C(C#,CNAME),SC(S#,C#,GRADE)。要查询选修“ACCESS”课的年龄不小于20的全体学生姓名的SQL语句是“SELECTSNAMEFROMS,C,SCWHERE子句”。这里的WHERE子句的内容是()。A.S.S#=SC.S#ANDC.C#=SC.C#ANDSAGE=20ANDCNAME='ACCESS'B.S.S#=SC.S#ANDC.C#=SC.C#ANDSAGEIN=20ANDCNAMEIN'ACCESS'C.SAGE=20ANDCNAME='ACCESS'D.SAGE=20ANDCNAME='ACCESS'(20)设关系数据库中有一个表S的关系模式为S(SN,CN,GRADE),其中SN为学生名,CN为课程名,二者为字符型;GRADE为成绩,数值型,取值范围0~100。若要更正“王二”的化学成绩为85分,则可用()。A.UPDATESSETGRADE=85WHERESN='王二'ANDCN='化学'B.UPDATESSETGRADE='85'WHERESN='王二'ANDCN='化学'C.UPDATEGRADE=85WHERESN='王二'ANDCN='化学'D.UPDATEGRADE='85'WHERESN='王二'ANDCN='化学'(21)在SQL语言中,子查询是()。A.返回单表中数据子集的查询语句B.选取多表中字段子集的查询语句C.选取单表中字段子集的查询语句D.嵌入到另一个查询语句之中的查询语句(22)在SQL语言中,条件“年龄BETWEEN20AND30”表示年龄在20~30之间,且()。A.包括20岁和30岁B.不包括20岁和30岁C.包括20岁但不包括30岁D.包括30岁但不包括20岁(23)已知学生选课信息表:sc(sno,cno,grade)。查询“至少选修了一门课程,但没有学习成绩的学生学号和课程号”的SQL语句是()。A.SELECTsno,cnoFROMscWHEREgrade=NULLB.SELECTsno,cnoFROMscWHEREgradeIS''C.SELECTsno,cnoFROMscWHEREgradeISNULLD.SELECTsno,cnoFROMscWHEREgrade=''(24)有如下的SQL语句:Ⅰ.SELECTsnameFROMs,scWHEREgrade60Ⅱ.SELECTsnameFROMsWHEREsnoIN(SELECTsnoFROMscWHEREgrade60)Ⅲ.SELECTsnameFROMs,scWHEREs.sno=sc.snoANDgrade60若要查找分数(grade)不及格的学生姓名(sname),则以上正确的有哪些?()A.Ⅰ和ⅡB.Ⅰ和ⅢC.Ⅱ和ⅢD.Ⅰ、Ⅱ和Ⅲ二、综合练习题1、现有如下关系:学生(学号,姓名,性别,专业,出生日期)教师(教师编号,姓名,所在部门,职称)授课(教师编号,学号,课程编号,课程名称,教材,学分,成绩)用SQL语言完成下列功能。(1)删除学生表中学号为“20013016”的记录。(2)将编号为“003”的教师所在的部门改为“电信系”。(3)创建“英语”专业成绩有过不及格的学生的视图。(4)向学生表中增加一个“奖学金”列,其数据类型为数值型。2、现有如下关系:学生S(SNO,SNMAE,AGE,SEX)学习SC(SNO,CNO,GRADE)课程C(CNO,CNAME,TEACHER)用SQL语言完成下列功能。(1)统计有学生选修的课程门数。(2)求选修C4课程的学生的平均年龄。(3)求“李文”老师所授课程的每门课程的学生平均成绩。(4)检索姓名以“王”字打头的所有学生的姓名和年龄。(5)在基本表S中检索每一门课程成绩都大于等于80分的学生学号、姓名和性别,并把检索到的值送往另一个已存在的基本表STUDENT(SNO,SNAME,SEX)中。(6)向基本表S中插入一个学生元组('S9','WU',18,'F')。(7)把低于总平均成绩的女同学的成绩提高10%。(8)把“王林”同学的学习选课和成绩全部删除。3、根据书上第二章习题中的SPJ数据库,包括S、P、J、SPJ4个关系模式,用SQL完成如下操作。(1)找出所有供应商的姓名和所在城市.(2)找出所有零件的名称,颜色,重量(3)找出使用供应商S1所供应零件的工程号码.(4)找出工程项目J2使用的各种零件的名称及其数量.(5)找出上海厂商供应的所有零件号码.(6)出使用上海产的零件的工程名称.(7)找出没有使用天津产的零件的工程号码.(8)把全部红色零件的颜色改成蓝色.(9)由S5供给J4的零件P6改为由S3供应.(10)从供应商关系中删除供应商号是S2的记录,并从供应情况关系中删除相应的记录.(11)请将(S2,J6,P4,200)插入供应情况关系.
本文标题:数据库第3章作业
链接地址:https://www.777doc.com/doc-2428517 .html