资源描述:
《《数据库系统原理》实验4》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、姓名:《数据库系统原理》实验报告学号:1、实验成果截图指导教师:实验口期:2016/6/7研究所冇多名科研人员,每一个科研人员只属于一个研究所,每个研究所冇多个研究项II,每个研究项目有多名科研人员参加,每个科研人员可以参加多个研究项目。科研人员参加研究项目要统计工作量。研究所有属性:编号,名称,地址科研人员有属性:职工编号,姓名,性别,年龄,职称科研项目有属性:项目号,项目名,经费1.试画出ER图,并注明属性和联系类型2.将ER模型转换为关系模型,并注明主码和外码2.在mysql中用SQL语句建立上述表,自定义主键和外键,并输入部分测试数据mys
2、ql>usescienee;Databasechangedmysql>createtableinst(riidvarchar(3),rinamevarchar(5()),addrvarchar(100),primarykcy(riid));QueryOK,0rowsaffected(0.04sec)mysql>createtableres(ridvarchar(3),rnamevarchar(50),rsexvarchar(6),rageint(3),titlevarchar(100),primarykey(rid));QueryOK,0rowsa
3、ffected(0.03see)mysql>createtablepro(pidvarchar(3),pnamevarchar(50),fundnumeric(16,2),primarykey(pid));QueryOK,0rowsaffected(0.02sec)mysql>createtablepartin(pidvarchar(3),ridvarchar(3),workint(5),foreignkey(pid)referencespro(pid),foreignkey(rid)referencesres(rid),primarykey(ri
4、d.pid));QueryOK,0rowsaffected(0.03sec)mysql>showtables;++ITables_in_scienceI++IinstIIpartinIIproIIresI++4rowsinset(0.00sec)3.完成如下SQL查询:1)查询比“Lina”参与的项目的平均经费高的项目的名称;mysql>selectpnamefromprowherepidin(selectpidfromprowherefundin(selectmax(fund)fromprowherepidin(selectpidfrompart
5、inwhereridin(selectridfromreswheremame=,Lina,))));mysql>selectina*))));++IpnameI++IPro2I++1rowinset(2)查询名字屮至少含有一个“z”字符的科研人员的工作量;mysql>selectworkfrompartinwhereridin(selectridfromreswherernameliker%z%r);ERROR1054(42S22):Unknowncmysql>selectworkfrompartiIworkII45II23II21I3rowsin
6、set(0.00sec)搜狗拼音输入法半:3)查询在“HuaWei”或“ZhongXing"工作的科研人员的个人信息,查询结果首先按性别升序,然后按年龄降序排列;mysql>select*fromreswhereridin(selectridfromworkinwhereriidin(selectriidfrominstwhererinamclike'%HuaW%‘orrinamclike'ZhongX%'))orderbyrsexasc,ragedesc;mysql>select*fromreswhereridin(selectridfromwo
7、rki++++++IridIrnameIrsexIrageItitleI++++++IR02IMafeiIfemaleI50IpostdoctorI1R01ILinaIfemaleI25IdoctorI++++++2rowsinset(0.00sec)mysql>4)查询同时参与了“X01”和“X02”项目的科研人员的工作量的总和;mysql>selectsum(work)frompartinwhereridin(selectridfrompartinwhereridin(selectridfrompartinwherepid=P02Jandpid
8、=,POr);mysql>selectsum(work)frompart++Isum(work)I++I148I++1ro