Oracle实验报告.docx

上传人:b****1 文档编号:15074758 上传时间:2023-06-30 格式:DOCX 页数:32 大小:95.96KB
下载 相关 举报
Oracle实验报告.docx_第1页
第1页 / 共32页
Oracle实验报告.docx_第2页
第2页 / 共32页
Oracle实验报告.docx_第3页
第3页 / 共32页
Oracle实验报告.docx_第4页
第4页 / 共32页
Oracle实验报告.docx_第5页
第5页 / 共32页
Oracle实验报告.docx_第6页
第6页 / 共32页
Oracle实验报告.docx_第7页
第7页 / 共32页
Oracle实验报告.docx_第8页
第8页 / 共32页
Oracle实验报告.docx_第9页
第9页 / 共32页
Oracle实验报告.docx_第10页
第10页 / 共32页
Oracle实验报告.docx_第11页
第11页 / 共32页
Oracle实验报告.docx_第12页
第12页 / 共32页
Oracle实验报告.docx_第13页
第13页 / 共32页
Oracle实验报告.docx_第14页
第14页 / 共32页
Oracle实验报告.docx_第15页
第15页 / 共32页
Oracle实验报告.docx_第16页
第16页 / 共32页
Oracle实验报告.docx_第17页
第17页 / 共32页
Oracle实验报告.docx_第18页
第18页 / 共32页
Oracle实验报告.docx_第19页
第19页 / 共32页
Oracle实验报告.docx_第20页
第20页 / 共32页
亲,该文档总共32页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

Oracle实验报告.docx

《Oracle实验报告.docx》由会员分享,可在线阅读,更多相关《Oracle实验报告.docx(32页珍藏版)》请在冰点文库上搜索。

Oracle实验报告.docx

Oracle实验报告

Oracle

数据库实验报告

 

 

学院:

专业班级:

程:

号:

名:

软件与信息工程学院

10级软件工程/软工三班数据库实践

实验一:

Oracle10g安装卸载及相关工具配置

、实验目标:

安装Oracle10g,了解OEM,通过DBCA安装数据库,通过DBCA删除数据库,sqldeveloper连接数据库,卸载oracle1Og。

二、实验学时数

2学时

三、实验步骤和内容:

1、安装OraclelOg(默认安装数据库)

双击,

选择基本安装,安装目录D:

盘,标准版,默认数据库Orel,口令bhbh。

进入先决条件检查界面时:

网络配置需求选项不用打勾,直接下一步,是。

直到安装成功。

2、登陆和了解OEM

主要是已网页的形式来对数据库进行管理。

-OraDb10g_home1-配置和移植工具->DatabaseConfigurationAssistant-删除数据库->……

4、通过DBCA安装数据库xscj

程序->Oracle-OraDb10g_home1-配置和移植工具->DatabaseConfiguration

Assistant->&」建数据库->

5、sqldevelOper连接数据库

打开sqldeveloper,新建连接

连接名:

system_Ora

用户名:

system

口令:

bhbh

主机名:

本机计算机名

SID:

xscj

测试,显示成功,连接,保存。

6、卸载oracle10g

Windows下

1>停止所有Oracle服务,点UniversalInstaller卸载

2〉删除注册表中的所有关于Oracle项

在HKEY_LOCAL_MACHINE\SOFTWARE删除Oracle目录

3>删除硬盘上所有Oracle文件。

(1)Oracle安装文件

(2)系统目录下,在Programfiles文件夹中的Oracle文件

四、上机作业

根据实验步骤完成逐个实验目标中的任务。

五、心得体会

通过这次的实验,我了解了oracle数据库的情况。

懂得了数据库就是把数据存储在一个类似与仓库的地方,需要用时才从数据库里调出来。

通过上机实践,知道了装数据库和卸载数据库,并且学会了怎样连数据库。

实验二:

Oracle10g手工建数据库

、实验目标:

安装Oracle10g数据库环境,手工建立数据库;通过NetConfigurationAssistant建立监听,使用sqldeveloper连接数据库测试。

、实验学时数

2学时

三、实验步骤和内容:

先安装好Oracle10g数据库环境(不安装默认数据库)。

1.创建好相关的目录

假设oracle安装在D盘,打开命令行,运行->cmd->

mdD:

\oracle\product\10.2.0\admin\mydb\pfile

mdD:

\oracle\product\10.2.0\admin\mydb\bdump

mdD:

\oracle\product\10.2.0\admin\mydb\cdump

mdD:

\oracle\product\10.2.0\admin\mydb\udump

mdD:

\oracle\product\10.2.0\oradata\mydb

mdD:

\oracle\product\10.2.0\flash_recovery_area\mydb

2.创建数据库实例

(1)设置环境变量SID(注:

以后每打开一次CMD都要运行此句)

setORACLE_SID=mydb

2)创建口令文件

orapwdfile=D:

\oracle\product\10.2.0\oradata\mydb\Password=bhbhentries=5

3)使用oradim命令创建数据库实例mydb

oradim-new-sidmydb-startmodemanual-pfile"D:

\oracle\product\.\admin\mydb\pfile\"

3.用sys账户以sysdba的身份登录

输入sqlplussys/bhbhassysdba

4.创建实例初始化参数文件,并将其放到

路径下。

#Copyright(c)1991,2001,2002byOracleCorporation

job_queue_processes=10

#JobQueues

#SharedServer

dispatchers="(PROTOCOL=TCP)(SERVICE=mydbXDB)"

#Miscellaneous

compatible=10.2.0.

#SecurityandAuditing

remote_login_passwordfile=EXCLUSIVE

#Sort,HashJoins,BitmapIndexes

pga_aggregate_target=

sort_area_size=65536

#DatabaseIdentification

db_domain=""

db_name=mydb

#FileConfiguration

control_files=("D:

\oracle\product\10.2.0\oradata\mydb\",

"D:

\oracle\product\","D:

\oracle\product\")

db_recovery_file_dest=D:

\oracle\product\10.2.0\flash_recovery_area

db_recovery_file_dest_size=48

#Pools

java_pool_size=

large_pool_size=8388608

shared_pool_size=

#CursorsandLibraryCache

open_cursors=300

#SystemManagedUndoandRollbackSegments

undo_management=AUTO

undo_tablespace=UNDOTBS1

#DiagnosticsandStatistics

background_dump_dest=D:

\oracle\product\10.2.0\admin\mydb\bdump

core_dump_dest=D:

\oracle\product\10.2.0\admin\mydb\cdump

user_dump_dest=D:

\oracle\product\10.2.0\admin\mydb\udump

#ProcessesandSessions

processes=150

#CacheandI/O

db_block_size=8192

db_cache_size=

db_file_multiblock_read_count=16

5.运行命令实例初始化

STARTUPNOMOUNTpfile="D:

\oracle\product\10.2.0\admin\mydb\pfile\";

6.运行创建数据库SQL命令

CREATEDATABASEmydb

MAXINSTANCES1

MAXLOGHISTORY1

MAXLOGFILES5

MAXLOGMEMBERS5

MAXDATAFILES100

DATAFILE'D:

\oracle\product\10.2.0\oradata\mydb\'

SIZE500MAUTOEXTENDONNEXT100M

MAXSIZEUNLIMITED

SYSAUXDATAFILE

'D:

\oracle\product\10.2.0\oradata\mydb\'size20M

UNDOTABLESPACEUNDOTBS1DATAFILE

'D:

\oracle\product\10.2.0\oradata\mydb\'

SIZE150MREUSEAUTOEXTENDONNEXT50M

MAXSIZEUNLIMITED

DEFAULTTEMPORARYTABLESPACETEMP1TEMPFILE

'D:

\oracle\product\10.2.0\oradata\mydb\'SIZE100MREUSE

CHARACTERSETZHS16GBK

NATIONALCHARACTERSETAL16UTF16

LOGFILE'D:

\oracle\product\10.2.0\oradata\mydb\'SIZE

50M,

'D:

\oracle\product\10.2.0\oradata\mydb\'SIZE50M,

'D:

\oracle\product\10.2.0\oradata\mydb\'SIZE50M;

7.创建用户表空间USERS

CREATETABLESPACEUSERS

DATAFILE'D:

\oracle\product\10.2.0\oradata\mydb\'

SIZE128MREUSE

AUTOEXTENDONNEXT1280K

MAXSIZEUNLIMITED;

8.创建数据字典(需要几分钟,报错不要紧)

@D:

\oracle\product\10.2.0\db_1\RDBMS\ADMIN\;

9.创建内部包(需要几分钟,报错不要紧)

@D:

\oracle\product\10.2.0\db_1\RDBMS\ADMIN\;

10.创建自启动文件,以便以后不用每次打开数据库实例都要运行一次第5

步。

createspfileFROMpfile='D:

\oracle\product\10.2.0\admin\mydb\pfile\';

11.重启数据库,即关闭再打开。

shutdown;

connectsys/bhbhassysdba;

startup;

12.授权用户system为dba,置密码为bhbh

grantdbatosystemidentifiedbybhbh;

13.使用system用户登录

connsystem/bhbh;

14.为system用户创建一张KC表

CREATETABLEKC

KCHCHAR(3)NOTNULL,

KCMCHAR(16)NOTNULL,

KKXQNUMBER

(1)NOTNULL,

XSNUMBER

(2)NOTNULL,

XFNUMBER

(2),

CONSTRAINTCH_KKXQCHECK(kkxqbetween1and8),

CONSTRAINT"PK_KCH"PRIMARYKEY("KCH"))

TABLESPACEUSERS;

15.给KC表插入一条数据,并提交。

INSERTINTOKCVALUES('O数据库',7,68,4);

commit;

16.测试查询

Select*fromkc;

17.使用NetConfigurationAssistant添加监听器,并重启监听器(运行cmd->netca也一样)。

18.创建Em资料档案库(这一步可以省略,只为创建OEM,我们以后学习

用不到)。

cmd->emca-configdbcontroldb-reposcreate

19.打开SQLDeveloper,并新建数据库连接并测试是否成功。

20.若之前手工安装数据库出现差错,可使用以下命令删除数据库实例:

cmd->oradim-delete-sidmydb

然后删除第1步所建目录即可。

四、上机作业

根据实验步骤完成逐个实验目标中的任务。

五、心得体会:

通过这次的实验,明白了手动建数据库,建表空间等。

还知道了运行数据库的命令,授权命令插表等等。

这次学习让我对数据库的了解和运用又新的体会。

实验三:

数据库修改

、实验目标:

学习简化实验二里的实验步骤,学习修改数据库某些属性,完成数据库作业

1:

手工快速创建数据库实例XSCJ和数据库XSCJ

二、实验学时数

2学时

三、实验步骤和内容:

1.安装好ORACLE10g(不需要安装数据库)。

2.快速安装数据库实例mydb和数据库mydb需要3个文件:

,,

1)双击运行文件;

2)将放到正确的路径下(参考实验二)3)在sqlplus环境下运行

3.了解startupnomount,startupmount和startup三种状态的使用情况的区别,即打开实例不装载数据库、打开实例装载数据库但不打开数据库和打开实例装载数据库同时打开数据库。

(1)运行P45页例子2-7修改数据库(提示:

startup;)

ALTERDATABASEmydb

DATAFILE'D:

\oracle\product\10.2.0\oradata\mydb\'RESIZE200M;

(2)运行P45页例子2-9删除数据库(提示:

startupmount;)

取消数据库的受限制状态:

altersystemenablerestrictedsession;

删除数据库:

DROPDATABASE;

3)重建数据库

sys重新登录,运行。

4.删除数据库实例mydb和数据库mydb。

使用命令oradim-delete-sidmydb以及删除相关文件夹。

四、上机作业

适当地修改建库所用到的3个文件里的参数,手工安装数据库实例xscj和数据库xscj(快速安装),用户表空间myts。

五、心得体会

这次学习,让我明白了怎样修改数据库某些属性,手工快速创建数据库实例

XSCJ和数据库XSCJDROPDATABAS命令可以删除数据库…

实验四:

表的创建、修改和删除

以及表数据的插入、修改和删除

、实验目标:

学习表的创建、插入、修改和删除以及表数据的插入、修改和删除。

、实验学时数

4学时

三、实验步骤和内容:

1.手工创建好数据库XSCJ

2.为用户system创建3个表XSBKCB和CJB(P66-67例子,createtable用法,自己照书完成)。

CREATETABLEXSB

(XHchar(6)NOTNULLPRIMARYKEY,

XMchar(8)NOTNULL,

XBchar

(2)DEFAULT'1'NOTNULL,

CSSJdateNOTNULL,

ZYchar(12)NULL,

ZXFnumber

(2)NULL,

BZvarchar2(200)NULL

)TABLESPACEmyts;

CREATETABLEKCB

(KCHchar(3)NOTNULLPRIMARYKEY,

KCMchar(16)NOTNULL,

KKXQnumber

(1)NULL,

XSnumber

(2)NULL,

XFnumber

(1)NOTNULL

)TABLESPACEmyts;

CREATETABLECJB

(XHCHAR(6)NOTNULL,

KCHCHAR(3)NOTNULL,

CJNUMBER

(2),

XFNUMBER

(1),

PRIMARYKEY(XH,KCH)

)TABLESPACEmyts;

3.学习修改表结构(P70例子

(1)-(3)altertable用法)。

(1)在表XSB中增加两列:

JXJ(奖学金等级)、DJSM(奖学金等级说明)。

ALTERTABLEXSB

ADD(JXJnumber

(1),

DJSMvarchar2(40)DEFAUL奖金1000元');

(2)在表XSB中修改名为DJSM的列的默认值。

ALTERTABLEXSB

MODIFY(DJSMDEFAUl奖金800元');

(3)在表XSB中删除名为JXJ和DJSM的列。

AlTERTABlEXSB

DROPCOlUMNJXJ;

AlTERTABlEXSB

DROPCOlUMNDJSM;

修改好可用命令:

describetable_name;查看。

4.删除表(P71droptable用法)。

DROPTABlEtable_name;

5.向XSCJ数据库的表XSB中插入一行(P75例子insert用法))

INSERTINTOXSB(XH,XM,XB,CSSJ,ZY,ZXF)

VALUES('101101',王林','男',TO_DATEC','YYYYMMDD'计算机',50);

提交数据:

Commit;

插入后可用命令:

select*fromtable_name;查看。

6.学习删除表数据(P78DELETE口TRUNCATE勺用法)。

将XSCJ数据库的XSB表中总学分小于50的行删除:

DELETEFROMXSBWHEREZXF<50;

使用TRUNCATETABLS句删除表中的所有数据,且不能恢复。

TRUNCATETABLEtable_name;

插入后可用命令:

select*fromtable_name;查看。

7.为3个表XSBKCB和CJB插入数据(使用)

8.学习修改表数据(P78-79例子UPDATE用法))

UPDATEXSB

SETBZ三好'

WHEREXH='101110';

UPDATEXSB

SETZXF=ZXF+10;

UPDATEXSB

SETZY通信工程',

BZ二转专业学习',

XH='101241'

WHEREXM二罗林琳';

UPDATEXS

SETZXF=ZXF+4,

BZ=提'前修完《数据结构》,并获得学分'

WHEREXM^明';

插入后可用命令:

select*fromtable_namewhere(条件);查看。

9.将数据恢复到刚插入时的状态(即把修改过的表清空再插入)

10.了解一下同义词,知道同义词的作用(不作重点)。

四、上机作业

手工安装数据库实例xscj和数据库xscj(快速安装),用户表空间myts后,为用户system创建3个表XSBKCB和CJB并插入所有数据。

五、心得体会

这次学习的表创建,删除和修改的学习使我对数据库的表的认识更进一步。

通过这次的学习,学会对表的创建、修改、删除。

创建表就是按格式写些代码;修改(UPDATE表名+需修改的内容)和删除(DROPTABLE表名)就是使用指定的指令对表进行操作,使之完成想要的目的。

实验五:

数据库查询练习

、实验目标:

学习数据库数据查询语句的基本方法以及视图的使用方法。

二、实验学时数

6学时

三、实验步骤和内容:

课本例子:

,,,,

(2),,

(2)

,,,

(1),(3),,,

一)学习和掌握课本查询语句的基本语法和使用方法,完成下面练习(@为选做)。

 

Select*fromxsb;

 

Selectkchfromxsbwherexmlike'王%';

*3、

查询出生于85和86年的女同学的学号和姓名。

Selectxh,xmfromxsbwherecssjbetweento_date('','yyyymmdd')andto_date('','yyyymmdd')andxb='女';

*4、查询学号为101104所选修的全部课程成绩。

Selectcjfromcjbwherexh='101104';

*5、检索每个学生的姓名和年龄。

Selectxm,to_char(sysdate,'yyyy')-to_char(cssj,'yyyy')as年龄fromxsb;

*6、在XS表中检索学生的姓名和出生年份,输出的列名为姓名和生年

Selectxm,to_char(cssj,'yyyy')as出生时间fromxsb;

*7、在XS_KC表中,求选修课程206的学生的学号和得分,并将结果按分数降序排序。

Selectxh,cjfromcjbwherekch=

'206'orderbycjdesc;

*8、把课程名为软件工程的成绩从学生选课数据表XSKC中删除。

Deletefromkcbwherekcm=(selectkchfromkcbwherekcm='软件工程’);

*9、把女同学的成绩提高10%。

Updatecjbsetcj=cj*wherexhin(selectxhfromxsbwherexb='女')andcj<=90;

*10、如果学号为061106的学生的成绩少于90,则加上10分。

Updatecjbsetcj=cj+10wherexh=

'061106'andcj<90;

*11、查询学号为061104的学生选修的课程号和课程名。

Selectxh,xmfromxsbwherexhin(selectxhfromcjbwherekcb=

'061104';

*12、检索学习课程号为206的学生学号与姓名。

Selectxm,xhfromxsbwherekch=

'206';

*13、检索‘李明'所选修的全部课程名称。

Selectkcmfromkchwherexm=(selectxmfromxsbwherexm='李明’);

*14、查找每个同学的学号及选修课程的平均成绩情况。

Selectxh,avgas课程号平均成绩fromcjb;

*15、求选修了各课程的学生的人数。

Selectcount(distinctxh)as选修课程总人数fromcjb;

Selectkchas课程号,count(xh)as选修人数groupbykch;

*16、查询平均成绩都在80分以上的学生学号及平均成绩。

 

Selectxh,cjfromcjbgroupbyxhhavingavg(cj)>80;

Selectxh,cjfromcjbgroupbyxhhavingavg(cj)>80orderbyavg(cj);

Selectxh,cjfromcjbgroupbyxhhavingavg(cj)>80orderbyavg(cj)desc;

*17、查询至少有6人选修的课程号。

Selectkchas课程号fromcjbgroupbyhavingcount(*)>=6;

'101'andkch=‘102';

*18、检索选修课程号为101或102的学生学号,姓名和所在系

S

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

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2