资源描述:
《数据库系统原理与应用课程实验new》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、数据库原理实验(一)学校:西安工程大学学院:计算机科学学院班级:软件工程092班学号:40909050239姓名:马萍实验二一、实验题目:数据库的设计二、实验目的:掌握数据表建立、修改、删除、索引的SQL语句。三、实验中使用的关系表关系表S、C、SC:S(SNO,SNAME,SEX,AGE,DEPT)C(CNO,CNAME,CCREDIT)SC(SNO,CNO,GRADE)学生表S由学号SNO,姓名SNAME,性别SEX,年龄AGE,所在系DEPT组成。课程表C由课程号CNO,课程名CNAME,学分CCREDIT组成。选课表SC由学号SNO,课程号CNO,成绩GRA
2、DE组成。四、实验内容:(1)数据表的修改(2)数据表的删除(3)数据表的索引建立(4)视图的建立与删除五、实验步骤1、建立数据库createdatabasemaping111;2、建表1)S表createtableS(SNOchar(11)primarykey,SNAMEchar(20)unique,SEXchar(6),AGEsmallint,DEPTchar(20));2)C表createtableC(CNOchar(11)primarykey,CNAMEchar(20)unique,CCREDITsmallint);3)SC表createtableSC(SN
3、Ochar(11),CNOchar(11),GRADEsmallint,primarykey(SNO,CNO),foreignkey(SNO)referencesS(SNO),foreignkey(CNO)referencesC(CNO));2、表的删除droptableC;3、索引建立createuniqueindexSnoonS(SNO);createuniqueindexCnoonC(CNO);createuniqueindexSCnoonSC(SNOASC,GRADEDESC);4、视图的建立与删除l建立一个计算机系学生基本信息视图CSV(SNO,SNAME
4、,SEX,AGE)createviewCSVasselectSNO,SNAME,SEX,AGEfromSwhereDEPT='计算机';l查询1983年以后出生的计算机系学生基本信息。select*fromCSVwhereAGE<(2011-1983);l建立一个计算机系学生成绩视图JSGV(SNO,CNO,GRADE)。createviewJSGVasselectS.SNO,CNO,GRADEfromS,SCwhereDEPT='计算机'andS.SNO=SC.SNO;l查询计算机系学生选课多于3门的学生学号。selectSNOfromJSGVgroupbySNO
5、havingcount(*)>3;l查询计算机系学生2号课不及格的学生学号和成绩。selectSNO,GRADEfromJSGV1whereCNO='002'andGRADE<60;六、实验心得通过本次试验,自己亲自在数据库中建表,在表上建立了索引和视图,而且还练习了基于表、视图和索引的基本操作,掌握了对于表和视图的查询、修改、增加、删除等的操作。数据库原理实验(二)学校:西安工程大学学院:计算机科学学院班级:软件工程092班学号:40909050239姓名:马萍实验三一、实验题目:数据表的数据操作二、实验目的:掌握数据表数据操作的SQL语句。三、实验内容:SQL语
6、句插入数据操作SQL语句修改数据操作SQL语句删除数据操作SQL语句查询数据操作四、实验过程维护数据SQL语句:(1)在学生表中插入一新生信息(‘200213808’,’HUJING’,’女’,22,’计算机’)insertintoSvalues('200213808','HUJING','女',22,'计算机');(2)删除数据库中学号为’200213811’的退学学生有关信息。deletefromSCwhereSNO='200213811';(1)将计算机系学生2号课成绩全部提高5%。updateSCsetGRADE=GRADE+GRADE*0.05where'
7、计算机'=(selectDEPTfromSwhereS.SNO=SC.SNO);(2)统计有学生选修的课程门数。selectCNO,count(SNO)fromSCgroupbyCNO;(3)统计HU老师所授每门课程的学生平均成绩。selectavg(GRADE)fromSCwhere'HU'=(selectTERTHERfromCwhereC.CNO=SC.CNO);(1)统计所有选修人数多于20的课程号和选课人数,并按人数降序排列,若人数相等,则按课程号升序排列。selectCNO,count(SNO)fromSCgroupbyCNOhavingcount(