电子科技大学数据库原理及应用实验报告2017计算机学院.docx

上传人:scccc 文档编号:14375441 上传时间:2022-02-04 格式:DOCX 页数:28 大小:67.83KB
返回 下载 相关 举报
电子科技大学数据库原理及应用实验报告2017计算机学院.docx_第1页
第1页 / 共28页
电子科技大学数据库原理及应用实验报告2017计算机学院.docx_第2页
第2页 / 共28页
电子科技大学数据库原理及应用实验报告2017计算机学院.docx_第3页
第3页 / 共28页
电子科技大学数据库原理及应用实验报告2017计算机学院.docx_第4页
第4页 / 共28页
电子科技大学数据库原理及应用实验报告2017计算机学院.docx_第5页
第5页 / 共28页
亲,该文档总共28页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《电子科技大学数据库原理及应用实验报告2017计算机学院.docx》由会员分享,可在线阅读,更多相关《电子科技大学数据库原理及应用实验报告2017计算机学院.docx(28页珍藏版)》请在三一文库上搜索。

1、电占科技4w计算机专业类课程实 验报 告课程名称:数据库原理及应用学 院:计算机科学与工程学院专业:数字媒体技术学生姓名:tss学号:2015060501指导教师:胡旺期: 2017年4月26日电子科技大学实验报告实验一一、实验名称:创建、备份与恢复数据库二、实验学时:2三、实验内容和目的:本实验要求学生掌握创建数据库的方法及相关操作,向数据库中添加样本数据,学习SQLSERVER数据库的恢复和备份。四、实验原理:使用数据库管理系统DB、DDL创建数据库及数据库对象五、实验器材(设备、元器件)MySQL WorkBench, 安装了 MySQL的阿里云服务器一台六、实验步骤:远端使用CentO

2、S7.3,从MySQL官网上配置好MySQL5.7的源之后安装启动服务安装好MySQL Server 5.7之后配置好安全选项,比如关闭远程 root登录保证安全,打开允许远程连接数据库等使用root账号登录,创建一个普通用户(如图)mysql SHOW VARIABLES LIKE validate_password%1;| Variable_name|Value|+4-validate_password_check_user_name|OFF| validate_password_dictionary_file|validate_password_length|8|validate_pas

3、sword_mixed_case_count|1|validate_pa$word_number_count|1|validate_password_policy|LOW|validate-password_speciaL_char_count|1|+7 rows in set (0.00 sec)mysql CREATE USER tss IDENTIFIED BY 1db_test_04261; Query OK, 0 rows affected (0.00 sec)为了方便起见给用户ROOT操作权限mysql GRANT ALL PRIVILEGES ON *.* TO tss; Que

4、ry OK, 0 rows affected (0,G0 sec)打开本机的MySQL WorkBench新建一个查询,开始写建库建表的语句110 091 Lirnt to 1000 rows | % | f Q 皿回create database db2015060501024;use db2015060501024;67 8910111213 141516171819202122 232425262728 29303132333435Mcreate table dep(depid varchar(o) primary key, depanme varchar(20) not nullScr

5、eate table teacher(tid varchar(S) primary key, tname varchar(j) not null, title varchar(ie) depid varchar(22)El create table studcnt(sid varchar(ll) primary key, sname varchar(8) not null, sex Char(2) not null, depid varchar(20)/ birthd date, semail varchar(20), homeaddr varchar(4) create table cour

6、se(cid varchar( ) primary key,cname varchar(3Q) not null.cid_pre varchar(8),credits numeric( 9 ) not nullScreate table sc(sid varchar() cid varchar() tid varchar(S)not null, not null, not null.score integer, primary key(sid?cid)Output邙 Action Output# Time Action1 10:57:31 create database db201506050

7、10242 10:57:31 use db20150605010243 10:57:32 create table dep( depid varchar(8) primary key. depanme varchar(20) not null)4 10:57:32 create table teacher(tid varchar(8) primacy key. tname varchar(8) not null, title varchar(10). depid v 5 10:57:32 create table student( sid varchar(11) primary key. sn

8、ame varchar(8) not null, sex Char(2) not null, de 6 10:57:32 create table course( dd varchar(8) primary key. cname varchar(30) not null, dd_pre varchar(8). ere 7 10:57:32 create table sc( sid varchar(8) not null, dd varchar(8) not null, tid varchar(8) not null, score integer.create database db201506

9、0501024; use db2015060501024;create table dep(depid varchar(8) primary key, depanme varchar(20) not null );create table teacher(tid varchar(8) primary key, tname varchar(8) not null, title varchar(10), depid varchar(20), );create table student(sid varchar(11) primary key, sname varchar(8) not null,

10、sex Char not null, depid varchar(20), birthd date, semail varchar(20), homeaddr varchar(40), );create table course(cid varchar(8) primary key, cname varchar(30) not null, cid_pre varchar(8), credits numeric(3,1) not null );create table sc(sid varchar(8) not null, cid varchar(8) not null, tid varchar

11、(8) not null, score integer, primary key(sid,cid) );数据库的备份rootfSiZwz947j5iw3SavxwObuekZ backup# mysqldump -uroot -pN?ua2qLaORS -all-databases backup.sql mysqldump; Warning Using 日 password on the command line interface can be insecure,root(3iZwz947jsiw38avxwebuekZ backup# Is backup.sql在mysql服务器主机上执行

12、命令mysqldump -uroot -pN?/ua2qLaORS -all-databases backup.sql-u用户名-p密码这里使用了 root用户-all-databases备份所有数据库,并导出到 backup.sql文件root0iZwz947jsiw38avxwGbuekZ backup# mysql -uroot -pN?/ua2qLaORS backup. sql mysql: Warning Using a password on the command line interface can be insecure. root(aiZwz947jsiw38avxwGb

13、uekZ backup# |数据库的恢复mysql -uroot -pN?/ua2qLaORS = 0 and score depid)values( 045201;刘七,女001)3insert into cours#valu( ,166,J 匚 4-1包序设二一jMull,.);insert into coursevaluEE1砒,离或教学I, i.);insert into courseMHIU(,/数据结构;1力insert into scvaluesC 201935- , b 100 1 * );insert into scvaluesf * 030204028,1&0b,5);in

14、sert into sc94520 暂 i-jierjeweeL ,剧);insert into scvalues(,45201012,/101&99WI1,7);insert into scvalues( &45201012,/1021 /&0&0C267);Output (J Action Output#TimtIretono115B:36 rsert into course vaLcsfl0T 髯散数学:null3。Q 5911:56:36 Mert irtto course vduesfl。工独据结构口 Dff J .0)o 的11:56:况 nsert into sc valuMfD

15、602D1035; 1M , 0000011, 100).6111:5S:3B insert into sc values,D3D2O402SJ.11 M);TOD0DZ.59)0621T.56:M *isart Ino k valuwf04520101007Q0OT0T轴1:5S:3B insert into sc valuesf04520101Z;1 DI:TODODI 77)Q 5411 56:39 rsert ino k valuf(M5201012V1 OZ.TOOOOO?,62)insert into depvalues(001,计算机科学与工程);insert into depv

16、alues(002,微电子与固体电子);insert into teachervalues(000001,胡旺,副教授,001);insert into teachervalues(000002,俸志刚,讲师,001);insert into student(sid,sname,sex,depid) values(060201035,张三,男,001);insert into student(sid,sname,sex,depid) values(030204028,字四,男,001);insert into student(sid,sname,sex,depid)values(0601020

17、27,王五,男,001);insert into student(sid,sname,sex,depid)values(030201012,老六,女,001);insert into student(sid,sname,sex,depid)values(045201012,刘七,女,001);insert into coursevalues(100,C+程序设计,null,4.0);insert into coursevalues(101,离散数学,null,3.0);insert into coursevalues(102,数据结构,100,4.0);insert into scvalues

18、(060201035,100,000001,100);insert into scvalues(030204028,100,000002,59);insert into scvalues(045201012,100,000001,80);insert into scvalues(045201012,101,000001,77);insert into scvalues(045201012,102,000002,62);七、实验数据及结果分析:如上所示。注意,需要在建表的同时使用utf8字符集。这点在后来加入数据时进行了 修改,否则不支持中文代码在2.sql文件以及2add.sql文件中 八、实

19、验结论、心得体会和改进建议:学习了使用外键约束,check约束电子科技大学实验报告实验三一、实验名称:数据的修改二、实验学时:4三、实验内容和目的:练习UPDATE、DELETE命令的使用,实现对数据的修改和删除。四、实验原理:使用结构化查询语言,在满足约束条件的情况下完成数据修改五、实验器材(设备、元器件)阿里云服务器一台,电脑一台六、实验步骤: 手动输入sql语句1 * update dep2 set depname=Information3 where depid=1011;45 delete from sc6 where sid in (select sid from student

20、where depid=(0011) and cid=102,;78 delete from sc9 where sid in (select sid from student where depid=002) and cid=1101 ; L0LI insert into student(sidJ snamej sexdepid,birthd,semail,homeaddr)L2 select 2406030102sname,seXj depidbirthd semailjhomeaddr from studentLS where sid=TS60201035,;L4L5 - update

21、sc set sid=T2406030102 where sid=1060201035,;L6 delete from student where sid=r 060201035 1 ;|update depset depname=Informationwhere depid=001; /* 将院系中,院系名改为 Information */delete from scwhere sid in (select sid from student where depid=001) and cid=102;/*在选课表中,删除计算机科学与工程系学生选修2号课程的记录*/delete from scw

22、here sid in (select sid from student where depid=002) and cid=101;/*在选课表中,删除软件工程系学生选课1号课程的纪录记录*/insert into student(sid,sname,sex,depid,birthd,semail,homeaddr)select 2406030102,sname,sex,depid,birthd,semail,homeaddr from studentwhere sid=060201035;update sc set sid=2406030102 where sid=060201035;del

23、ete from student where sid=060201035;/*学号为2406010103的同学由原来的计算机科学与工程系转入信息安全系,学号更改为2406030102,在数据库中做出相应修改 */使用了 update语句修改学习了 当外键约束存在的时候如何进行修改(即修改学号的步骤)Sql语句保存在3.sql文件中八、实验结论、心得体会和改进建议:外键的存在可以很好的对数据进行约束,防止一些修改的过程中出现不合 法的数据。电子科技大学实验报告实验四一、实验名称:简单查询、多表查询二、实验学时:2三、实验内容和目的:练习用SELECT查询语句,设置查询条件,实现单表查询。练习使用

24、 SELECT语句从多个表中查询数据,表的内连接、左外连接、右外连接的使用以及设置连接条件,理解连接条件和查询条件的在目的和功能上的区别四、实验原理:结构化查询语言、表的连接、关系运算五、实验器材(设备、元器件)阿里云服务器一台,MySQL WorkBench六、实验步骤:手动输入sql语句查询年龄在2022之间的学生姓名(通过出生日期和当前日期计算年龄,方法见第八章)5 * s-elect snarnedepnarwe= L00ft(DATEDIFF(CLFRDATE)j, birthd)/365.2422)6 from studentdep7 where student. dcpd*dep

25、Pdcpid 0M (CATEOIFF(CURM-TE(a birfchd)/- jnah Gt4dFilarExport! I Wnp Cl Confiuit! JX七、实验数据及结果分析:O Piter Rows;sriauiesemail060MU335 *二NULLsname deprame凡 OCAEATEDt 芹 fdRWCTEO. birM/5-2422)干天计议刈料早占TJ520瑞二注置1科学MT转21select snamefrom studentwhere FLOOR(DATEDIFF(CURDATE(), birthd)/365.2422)= 20;查询年龄在2022之间

26、的学生姓名、院系和年龄(忘记截图)select sname,depname,FLOOR(DATEDIFF(CURDATE(), birthd)/365.2422)from student,depwhere student.depid=dep.depid and (DATEDIFF(CURDATE(), birthd)/365.2422) = 20;查询姓张的学生的学号、姓名、邮件地址9 *selectsemail10from student11where sname likeFE二:Result GridNULLselect sid,sname,semail from studentwhere

27、 sname like 张;查询所有有成绩(成绩不为空)的学生学号和课程号13 select sidcid14from sc15where score ;RuH Grid JJj F tef Rcvrt;sidod03020023100045201012100045201012101045201012102045201072101060201035100INULLselect sid,cid from sc where score0;查询选修了 2号课程成绩在 60分以下的所有学生 的学号、姓名、学生的邮件地址、课程名、教师 姓名和教师的邮件地址及课程成绩XO17 * select stude

28、ntsidstudentpjstudentscoursecnainj,teacher + tnsmej,scscore18 froir studentcoursejteacher#sc19 where sc J.sid=student|. sid and sc. cid=course. cid and sc tid=teacher. tid and scscore ;Result Grid | 日目 Filter Rows;Export; | Wrap Cell Corrtents Jasidsname semailnametnamescore030304028查四盖由刚59select st

29、udent.sid,student.sname,student.semail,ame,teacher.tname,sc.scorefrom student,course,teacher,scwhere sc.sid=student.sid and sc.cid=course.cid and sc.tid=teacher.tid and sc.score= JFilter Kc晔:Experts 甯 VJrap Celli Content: JaResult Grid及格求每个学生的选课的门数,显示学号和选课门数select sid,courrt(distinct cid) as,选课门数 fr

30、om scgroup by sidjResult Grid 目目 弋,Filter Hows:Wrap Celli Content这评门数0302002810452010123045201072 I060201JD351求每个学生选课的总学分数,显示学号和学分9 select sid, sum(course.credits)10frorr sc,course11group by/tfrap d CoResult Grid 韭 O Alter Rck1:Export: 明ddsum (course, credits)0302002811.C0452Q101233.Q04520107211.006020103511.0求每个学生的总成绩,显示学号和总成绩1213 select 5id, sum(score) as,息或策14from 5d15group by Mid:Result Grid 30204023总成绩5904520101221904520107277060201035100求每门

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1