首页 mysql数据库武洪萍版第四章习题与答案

mysql数据库武洪萍版第四章习题与答案

举报
开通vip

mysql数据库武洪萍版第四章习题与答案一.选择题1.下面哪种数字数据类型不可以存储数据256?(D)bigintB.intC.SmaIIintD.tinyint2.下面是有关主键和外键之间的关系描述,正确的是(AC)A,一个表最多只能有一个主键约束,多个外键约束。一个表中最多只有一个外键约束,一个主键约束。C.在定义主键外键约束时,应该首先定义主键约束,然后定义外键约束。D.在定义主键外键约束时,应该首先定义主键约束,然后定义主键约束。3,下面关于数据库中表的行和列的叙述正确的是(D)A.表中的行是有序的,列是无序的B,表中的列是有序的,行是无序的C....

mysql数据库武洪萍版第四章习题与答案
一.选择题1.下面哪种数字数据类型不可以存储数据256?(D)bigintB.intC.SmaIIintD.tinyint2.下面是有关主键和外键之间的关系描述,正确的是(AC)A,一个表最多只能有一个主键约束,多个外键约束。一个表中最多只有一个外键约束,一个主键约束。C.在定义主键外键约束时,应该首先定义主键约束,然后定义外键约束。D.在定义主键外键约束时,应该首先定义主键约束,然后定义主键约束。3,下面关于数据库中表的行和列的叙述正确的是(D)A.表中的行是有序的,列是无序的B,表中的列是有序的,行是无序的C.表中的行和列都是有序的D.表中的行和列都是无序的4.SQL语言的数据操作语句包括SELECTxINSERTxUPDATExDELETE等。其中最重要的,也是使用最频繁的语句是(A)A.SELECT5•在下列SQL语句中,修改表结构的语句是(A)oA.ALTERB.CREATEC.UPDATED.INSERT6.设有关系R(A,B,C)和S(C,D),与关系代数表达式nA.B,D(。=(R~S)等价的SQL语句是(B)。SELECT*FROMR.SWHERE=SELECTA.B,DFROMR.SWHERE=SELECTA.B.DFROMR.SWHERER二SSELECTA.BFROMRWHERE(SELECTDFROMSWHERE=7,设关系R(A.B,C)与SQL语句“SELECTDISTINSTAFROMRWHEREB=17”等价的关系代数表达式是(A)A.(R))B.((R))An(anaab=wb=i?C.((R))D.(R))anA.C(noa侬共”下面第(8)-(12)题,基于“学生-选课-课程”数据库中的3个关系。S(S#,SNAME.SEX,DEPARTMENT),主码是S#C(C#,CNAME,TEACHER),主码是C#SC(S#,C#.GRADE),主码是(S#,C#)8.在下列关于保持数据库完整性的叙述中,哪一个是不正确的?(D)A.向关系SC插入元组时,S#和C#都不能是空值(NULL)B.可以任意删除关系SC中的元组C.向任何一个关系插入元组时,必须保证该关系主码值得唯一性D,可以任意删除关系C中的元组9,查找每个学生的学号、姓名、选修的课程名和成绩,将使用关系(D)A,只有S,SCB,只有SC,CC,只有S,CD.S.SC,C10若要查找姓名中第1个字为“王”的学生的学号和姓名,则下面列出的SQL语句中,哪个(些)是正确的?(B)SELECTS#.SNAMEFROMSWHERESNAME='王%'II.SELECTS#,SNAMEFROMSWHERESNAMELIKEIII.A.SELECTS#,SNAMEFROMSWHERESNAMELIKE'王B.IIC.IllD.全部)B语句是(SQL,则正确的门以上课程的学生的学号”3若要“查询选修了11.SELECTS#FROMSCGROUPBYS#WHERECOUNT(*)>3SELECTS#FROMSCGROUPBYS#HAVINGCOUNT(*)>3SELECTS#FROMSCORDERBYS#WHERECOUNT(*)>3SELECTS#FROMSCORDERBYS#HAVINGCOUNT(*)>3.若要查找“由张劲老师执教的数据库课程的平均成绩、最高成绩和最低成绩”,则将使用关系(D)o下面第(13)-(16)题基于这样的3个表,即学生表S、课程表C和学生选课表SC,它们的关系模式如下。S和SCSC和CS和CD.S、SC和CS(S#,SN,SEX,AGE,DEPT)(学号,姓名,性别,年龄,系别)C(C#,CN)(课程号,课程名称)SC(S#,C#,GRADE)(学号,课程号,成绩).检索所有比“王华”年龄大的学生姓名、年龄和性别。下面正确的SELECT语句是(A)SELECTSN,AGE,SEXFROMSWHEREAGE>(SELECTAGEFROMSWHERESN二’王华,)SELECTSN,AGE,SEXFROMSWHERESN='王华’SELECTSN,AGE.SEXFROMSWHEREAGE>(SELECTAGEWHERESN二’王华')SELECTSN,AGE.SEXFROMSWHEREAGE>王华.AGE.检索选修课程“C2”的学生中成绩最高的学生的学号。正确的SELECT语句是(D)oSELECTS#FROMSCWHEREC#二'C2'ANDGRADE>=(SELECTGRADEFROMSCWHEREC#=,C2')SELECTS#FROMSCWHEREC#二'C2'ANDGRADEIN(SELECTGRADEGORMSCWHEREC#二'C2')SELECTS#FROMSCWHEREC#二'C2'ANDGRADENOTIN(SELECTGRADEGORMSCWHEREC#二'C2')SELECTS#FROMSCWHEREC#="C21ANDGRADE>=ALL(SELCETGRADEFROMSCWHEREC#二'C2').检索4门以上课程的学生总成绩(不统计不及格的课程),并要求按总成绩的降序排列出来。正确的SELECT语句是(B)SELECTS#,SUM(GRAGE)FROMSCWHEREGRADE>=60GROUPBYS#ORDERBYS#HAVINGCOUNT(*)>=4SELECTS#.SUM(GRADE)FROMSCWHEREGRADE>=60GROUPBYS#HAVINGCOUNT(*)>=4ORDERBY2DESCSELECTS#,SUM(GRADE)FROMSCWHEREGRADE>=60HAVINGCOUNT(*)<二4GROUPBYS#ORDERBY2DESCSELECTS#,SUM(GRADE)FROMSCWHEREGRADE>=60HAVINGCOUNT(*)>二4GROUPBYS#ORDERBY2.数据库见表和表,若职工表的主关键字是职工号,部门表的关键字是部门号,SQL操作(B)不能执行。A.从职工表中删除行('025、'王芳二'03、720)B将行('005、'乔兴二'04、720)插入到职工表中700”的工资改为001将职工号为“C.D.将职工号为‘038,的部门号改为“03”职工表会职工职工部门工EF00李058GH00刘067IJ025王芳03720K.L.038张强02650M.N.表部门表.部门号部门名主任01人事处高平02财务处蒋华03教务处许红04学生处杜琼.若用如下的STUDENT表。CREATETABLESTUDENT(NOchar(4)NOTNULL.NAMEchar(8)NOTNULL.SEXchar(2),AGEint);可以插入到STUDENT表中的是(B)oA.('1031',‘曾华‘,"男‘,23')B.('1031'「曾华\NULL.NULL)C.(NULL,'曾华‘,’男‘,‘23')D.('1031',NULL,'男',23)有关系S(S#,SNAME,SAGE),C(C#,CNAME),SC(S#,C#,GRADE)。要查询选修”ACCESS”课的年龄不小20的全体学生姓名的SQL语句"SELECTSNAMEFROMS,C.SCWHERE子句这里的WHERE子句的内容是(A)#=#AND#=#ANDSAGE>=20ANDCNAME="ACCESS,#=#AND#=#ANDSAGEIN>=20ANDCNAMEIN'ACCESS'SAGE>=20ANDCNAME='ACCESS'SAGE>=20ANDCNAMEIN'ACCESS'.若要在基本表中S中增加一列CN(课程名),可用(D)ADDTABLES(CNchar(8))ADDTABLESALTER(CNchar(8))ALTERTABLESADD(CN,char(8))ALTERTABLES(ADDCNchar(8)).学生关系模式S(S#,SNAME,AGE,SEX),S的属性分别表示学生的学号、姓名、年龄、性别。要在表S中删除一个属性“年龄”,可选用的SQL语句是(B)oA.DELETEAGEFROMSALTERTABLESDROPCOLUMNAGEUPDATESAGE,AGE*ALTERTABLESD.22,设关系数据库中有一个表S的关系模式为S(SN,CN.GRADE),其中SN为学生名,CN为课程名,二者为字符型;GRADE为成绩,数值型,取值范围0700。若要更正“王二”的化学成绩为85分,则可用(A)oUPDATESSETGRADE=85WHERESN二‘王二'ANDCN二‘化学’UPDATESSETGRADE='85'WHERESN二‘王二'ANDSN二‘化学’UPDATEGRADE=85WHERESN二‘王二'ANDCN二‘化学’UPDATEGRADE='85'WHERESN二’王二'ANDCN='化学'23.在SQL语言中,子查询语句是(D)oA.返回单表中数据子集的查询语句B.选取多表中字段子集的查询语句C.选取单表中字段子集的查询语句D.嵌入到另一个查询语句之中的查询语句.在SQL语言中,条件“年龄BETWEEN20AND30”表示年龄在20-30,且(A)。A.包括20岁和30岁B.不包括20岁和30岁C,包括20岁但不包括30岁D.包括30岁但不包括20岁.下列聚合函数不忽略空值(NULL)的是(C)oA.SUM(列名)B.MAX(列名)C.COUNT(*)(AGEISNULL)26.在SQL中,下列涉及空值的操作,不正确的是(C)oA.AGEISNULLB.AGEISNOTNULLC.AGE=NULL(AGEISNULL).已知学生选课信息表sc(sno,eno,grade)。查询“至少选修了一门课程,但没有学习成绩的学生学号和课程号”的SQL语句是(C)oSELECTsno.enoFROMscWHEREgrade二NULLSELECTsno.enoFROMscWHEREgradeIS”SELECTsno.enoFROMscWHEREgradeISNULLSELECTsno.enoFROMscWHEREgrade二".有如下的SQL语句。I.SELECTsnameFROMs.scWHEREgrade<60II.SELECTsnameFROMsWHEREsnoIN(SELECTsnoFROMscWHEREgrade<60)III.SELECTsnameFROMs.scWHERE二ANDgrade<60若要查找分数(grade)不及格的学生姓名(sname),则以上正确的有哪些?(C)A.I和IIB.I和川C.II和川D.IvII和III二.填空题.关系R(A,B,C)和S(A,D,E,F),有二。若将关系代数表达式(RsS),用m.SQL语言的查询语句表示,则为:SELECT,,,FROMR.SWHERE.=..SELECT语句中,WHERE子句用于选择满足给定条件的元组。使用GROUPBY子句可按..指定列的值分组,同时使用HAVING可提取满足条件的组。若希望将查询结果排序,则应.在SELECT语句中使用ORDERBY子句,其中,ASC选项表示升序,DESC选项表,一示降序。若希望查询的结果不出现重复元组,则应在SELECT子句中使用Distinct保留字。WHERE子句的条件表达式中,字符串匹配的操作符是LIKE,与0个或..多个字符匹配的通配符是%,与单个字符匹配的通配符是_下划线。..o相关子查询嵌套子查询,否则称为3.子查询的条件不依赖于父查询,这类查询称为SQL岁)的学生姓名和年龄的(含20岁和22有学生信息表4.student.求年龄在20-22岁。语句是:SELECTsname,ageFROMstudentWHEREageBETWEEN20AND22,,.在“学生选课”数据库中的两个关系如下。S(SNO.SNAME,SEX.AGE),SC(SNO.CNO.GRADE)则与SQL命令"SELECTSNAMEFROMSWHERESNOIN(SELECTSNOFROMSCWHEREGRADE<60)**等价的关系代数表达式是nSname(aGrade<60(SC°°S))«.在“学生-选课-课程”数据库中的3个关系如下。S(S#.SNAME,SEX.AGE),SC(S#.C#.GRADE).C(C#.CNAME.TEACHER)o现要查找选修“数据库技术”这门课程的学生的学生姓名和成绩,可使用如下的SQL语句。SELECTSNAME.GRADEFROMS.SC,CWHERECNAME='数据库技术'AND#=#AND#=#»..设关系SC(sno,cname,grade),各属性的含义分别为学号、课程名、成绩。若要将所有学生的“数据库技术”课程的成绩加5分,能正确完成该操作的SQL语句是UPDATESCSET。grade二grade+5WHEREcname二’数据库技术'。.在SQL语言中,若要删除一个表,应使用的语句是DROPTABLE。.三.综合练习题1.现有如下关系。学生(学号,姓名,性别,专业,出生日期)教师(教师编号,姓名,所在部门,职称)授课(教师编号,学号,课程编号,课程名称,教材,学分,成绩)用SQL语言完成下列功能。(1)删除学生表中学号为的 记录 混凝土 养护记录下载土方回填监理旁站记录免费下载集备记录下载集备记录下载集备记录下载 。(2)将编号为“003”的教师所在的部门改为“电信系”。(3)向学生表中增加一个“奖学金”歹其数据类型为数值型。答:①DELETEFROM学生WHERE学号=*'②UPDATE教师SET所在部门二'电信系'WHERE教师编号='003'③ALTERTABLE学生ADD(奖学金INT)现有如下关系:2.学生S(S#,SNMAE,AGE,SEX)学习SC(S#,C#,GRADE)课程C(C#,CNAME,TEACHER)用SQL语言完成下列功能:1)统计有学生选修的课程门数。2)求选修C4课程的学生的平均年龄。3)求李文老师所授课程的每门课程的学生平均成绩。4)检索姓名以王打头的所有学生的姓名和年龄。5)在基本表S中检索每一门课程成绩都大于等于80分的学生学号、姓名和性别,并把检索到的值送往另一个已存在的基本表STUDENT(S#.SNAME.SEX)中。6)往基本表S中插入一个学生元组CS9','WU',18,'F')o7)把低于总平均成绩的女同学的成绩提高10分。8)把王林同学的选课记录全部删除。答:FROMSC)DISTINCTC#(SELECTCOUNT①.②SELECTAVG(AGE)FROMSWHERES#IN(SELECTS#FROMSCWHEREC#=,C4')③SELECTAVG(GRADE)FROMSCWHEREC#IN(SELECTC#FROMCWHERETEACHER='李文’)GROUPBYC#©SELECTSNAME,AGEFROMSWHERESNAMELIKE'王卡⑤INSERTINTOSTUDENTSELECTS#,SNAME,SEXFROMSWHEREEXISTS(SELECT*FROMSCWHERE#=#GROUPBYS#HAVINGMIN(GRADE)>=80)或者INSERTINTOSTUDENTSELECTS#,SNAME,SEXFROMSWHERESNOIN(SELECTSNOFROMSCGROUPBYS#HAVINGMIN(GRADE)>=80)⑥INSERTINTOSVALUES(59、4WU\18,'F')⑦UPDATESCSETGRADE二GRADE*WHEREGRADE<(SELECTAVG(GRADE)FROMSC)ANDS#IN(SELECTS#FROMSWHERESEX='女')⑧DELETEFROMSCWHRERS#=(SELECTS#FROMSV/HERESNAME='王林’)3.设要创建学生选课数据库,库中包括学生、课程和选课3个表,其表结构如下。学生(学号,姓名,性别,年龄,所在系)课程(课程号,课程名,先行课)选课(学号,课程号,成绩)用SQL语句完成下列操作。(1)创建学生选课库。(2)创建学生、课程和选课表,其中学生中“性别”的域为“男”或“女”,默认值为“男工答:①CREATEDATABASE学生选课库②学生表:USEgrademanagerGoCREATETABLEstudent(snochar(10)PRIMARYKEYsnamevarchar(10),ssexchar(2)CHECK(ssexIN('男','女'))DEFAULT'男、sdeptchar(8))课程表CREATETABLEcourse(enochar(5)NOTNULL,cnamevarchar(20)NOTNULL,ctermtinyintNOTNULL,CONSTRAINTC1PRIMARYKEY(eno.cterm))CREATETABLEsc(snochar(10)NOTNULL,enochar(5)NOTNULL,degreenumeric(5,1).ctermtinyintNOTNULL,CONSTRAINTA1PRIMARYKEY(sno.eno,cterm),CONSTRAINTA2FOREIGNKEY(sno)REFERENCESSTUDENT(sno).CONSTRAINTA3FOREIGNKEY(eno)REFERENCESCOURSE(eno)tCONSTRAINTA5CHECK(degreeBETWEEN0AND100)).
本文档为【mysql数据库武洪萍版第四章习题与答案】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
dkcapt
有丰富的船舶驾驶经验,精通航海学
格式:doc
大小:17KB
软件:Word
页数:7
分类:
上传时间:2022-08-28
浏览量:2