oracle实验报告华北电力大学科技学院.docx
- 文档编号:10166542
- 上传时间:2023-02-09
- 格式:DOCX
- 页数:13
- 大小:278.74KB
oracle实验报告华北电力大学科技学院.docx
《oracle实验报告华北电力大学科技学院.docx》由会员分享,可在线阅读,更多相关《oracle实验报告华北电力大学科技学院.docx(13页珍藏版)》请在冰豆网上搜索。
oracle实验报告华北电力大学科技学院
华北电力大学科技学院
实验报告
实验名称学生选课数据库的设计与管理
课程名称Oracle11g数据库应用
专业班级:
软件09k2学生姓名:
闫雪峰
学号:
成绩:
指导教师:
黄建才实验日期:
2012-5-30
一、实验目的及要求
1、熟悉ORACLE的环境
2、用SQLPLUS创建用户,并赋予其管理员权限。
3、登陆创建的用户
4、设计教师表、课程表、学生表,及其建立各个表之间的约束
5、用数据定义语言建立三个表及其约束
6、运用SQL,对上述三个表插入一定数量的记录(至少每个表要求插入
7、10条记录)
8、用SQL语句查询至少教两门课的教师信息;用临时变量查询某个学生信息。
9、用PL/SQL,显示所有教师的信息。
10、将上面的所有的插入操作和查询操作按照不同的内容放到到不同的文件中,当到某个操作时,在SQLPLUS下运行该文件即可。
11、分别设计函数和过程均实现如下功能:
返回某门课学生的平均成绩(该课名称由参数传递)
12、设计过程显示某位教师所教的学生(该教师名通过参数进行传递)。
二、所用仪器、设备
Oracle11g数据库,SQLPLUS运行环境,文本文档做脚本文件。
三、实验方法与步骤
自己下载并安装了oracle最新版本,配置好环境后,启动服务开始进行实验。
为解决每次开启服务困难问题,编写了启动/停止oracle服务+sqlplus托管环境一站式颜海镜Oracle11gManger2.0beta版。
实现功能:
集成sqlplus在托管环境,彩屏宽屏多屏显示,多数据库智能切换,智能记录帐号密码,智能感知错误,多主机智能登录,深度集成颜海镜UI设计理念,为oracle11g量身定做全新一站式平台,化繁为简完美解决oracle的操作复杂性。
所做实验全部在此环境中。
四、实验代码实现及结果输出
1、实验代码及输出:
(1)创建用户语句(在脚本中):
createuseryan
identifiedbyyan123
defaulttablespaceusers
temporarytablespacetemp;
(2)为用户赋予权限并切换到当前用户。
grantcreatesession,dbatoyan;
connectyan/yan123;
(3)表的结构设计及约束设计代码:
Course表:
createtablecourse
(
Cnonumber(5)primarykey,
Cnamevarchar2(20),
Ccreditnumber
(2)
);
运行结果:
Student表:
createtablestudent(
Snonumber(5),
Snamevarchar2(8),
Ssexchar
(2),
Sagenumber(3),
Sdeptvarchar2(4),
Cnonumber(5),
constraintscforeignkey(Cno)referencescourse(Cno),
Gradenumber(3));
结果:
Teacher表:
createtableteacher(
Tnonumber(5)notnull,
Tnamevarchar2(8),
Tsexchar
(2),
Tagenumber(3),
Cnonumber(5),
constrainttcforeignkey(Cno)referencescourse(Cno));
结果:
(3)表中数据的插入代码
Course表:
insertintocoursevalues(1,'数据库',2);
insertintocoursevalues(2,'高数',3);
insertintocoursevalues(3,'信息系统',1);
insertintocoursevalues(4,'操作系统',4);
insertintocoursevalues(5,'数据结构',3);
insertintocoursevalues(6,'计算机网络',2);
insertintocoursevalues(7,'法语',2);
insertintocoursevalues(8,'软件体系结构',3);
insertintocoursevalues(9,'编程语言',4);
insertintocoursevalues(10,'大学写作',1);
运行结果:
Student表:
insertintoxx.student1(Sno,Sname,Ssex,Sage,Sdept,Cno,Grade)
values(95001,'李勇','男',20,'CS',1,90);
insertintoxx.student1(Sno,Sname,Ssex,Sage,Sdept,Cno,Grade)
values(95001,'李勇','男',20,'CS',2,90);
insertintoxx.student1(Sno,Sname,Ssex,Sage,Sdept,Cno,Grade)
values(95001,'李勇','男',20,'CS',3,90);
insertintoxx.student1(Sno,Sname,Ssex,Sage,Sdept,Cno,Grade)
values(95002,'李白','男',20,'CS',4,59);
insertintoxx.student1(Sno,Sname,Ssex,Sage,Sdept,Cno,Grade)
values(95003,'刘琛','男',20,'CS',5,90);
insertintoxx.student1(Sno,Sname,Ssex,Sage,Sdept,Cno,Grade)
values(95002,'李白','男',20,'CS',1,50);
insertintoxx.student1(Sno,Sname,Ssex,Sage,Sdept,Cno,Grade)
values(95004,'王敏','女',19,'CS',6,92);
insertintoxx.student1(Sno,Sname,Ssex,Sage,Sdept,Cno,Grade)
values(95005,'章立','男',21,'CS',1,90);
insertintoxx.student1(Sno,Sname,Ssex,Sage,Sdept,Cno,Grade)
values(95006,'杨国','男',20,'CS',9,80);
insertintoxx.student1(Sno,Sname,Ssex,Sage,Sdept,Cno,Grade)
values(95006,'杨国','男',20,'CS',1,70);
insertintoxx.student1(Sno,Sname,Ssex,Sage,Sdept,Cno,Grade)
values(95007,'杨晓','女',20,'CS',10,90);
insertintoxx.student1(Sno,Sname,Ssex,Sage,Sdept,Cno,Grade)
values(95008,'赵瑜','女',23,'CS',10,50);
insertintoxx.student1(Sno,Sname,Ssex,Sage,Sdept,Cno,Grade)
values(95009,'陆游','男',22,'CS',8,100);
运行结果:
Teacher表:
insertintoteachervalues(10001,'李刚','男',35,1);
insertintoteachervalues(10001,'李刚','男',35,3);
insertintoteachervalues(10001,'李刚','男',35,4);
insertintoteachervalues(10002,'李大钊','男',30,2);
insertintoteachervalues(10003,'毕淑敏','女',32,10);
insertintoteachervalues(10004,'朱自清','男',54,5);
insertintoteachervalues(10005,'鲁迅','男',35,6);
insertintoteachervalues(10006,'高强','男',42,7);
insertintoteachervalues(10007,'杨澜','女',29,8);
insertintoteachervalues(10008,'姚雪曼','女',26,9);
运行结果:
用SQL语句进行查询的代码及运行结果:
查询至少教两门课的教师信息;
用临时变量查询某个学生信息。
用PL/SQL,显示所有教师的信息。
将上面的所有的插入操作和查询操作按照不同的内容放到到不同的文件中,当到某个操作时,在SQLPLUS下运行该文件即可。
将上面的所有的插入操作和查询操作按照不同的内容划分到不同的文件中,当到某个操作时,在SQLPLUS下运行该文件即可。
SQL>starte:
\mytest\oracle\insert.sql;
SQL>starte:
\mytest\oracle\query.sql;
分别设计函数和过程均实现如下功能:
返回某门课学生的平均成绩(该课名称由参数传递)
/
运行结果:
调用存储过程
调用函数
设计过程显示某位教师所教的学生(该教师名通过参数进行传递)。
运行结果:
五、讨论与结论
通过本次实验,我学会了
1.安装oracle11g环境,由于开始安装有错误,掌握了如何卸载数据库重新安装。
2.在本机上建立多个数据库并自由切换。
3.自己做了oracle11g的继承环境。
4.学会了PL\SQL语法,掌握了结构化查询的过程,对oracle体系深入了解。
5.掌握了DDL,DML,DCL语法,学会了存储过程和函数的用法,已经继承到现有项目中,准备以后开发所有与数据库相关操作均做成存储过程。
本次实验我很认真的完成,基本熟练掌握oracle基本操作,完成实验,并在oracle8i和oracle11gR2均做到熟练掌握。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- oracle 实验 报告 华北 电力大学 科技学院