ImageVerifierCode 换一换
格式:DOCX , 页数:114 ,大小:147.14KB ,
资源ID:10864621      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10864621.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(ORACLE实验指导.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

ORACLE实验指导.docx

1、ORACLE实验指导Oracle实验指导目 录第一章 Oracle基本知识与SQL*PLUS环境 3一上机目的 3二预备知识 3三上机内容 6四上机作业 9第二章 数据表的创建 10一上机目的 10二预备知识 10三上机内容 13四上机作业 15第三章 数据插入、修改和删除 16一上机目的 16二预备知识 16三上机内容 18四上机作业 19第四章 数据查询 21一上机目的 21二预备知识 21三上机内容 30四上机作业 36第五章 视图、索引、序列和权限设置 38一上机目的 38二预备知识 38三上机内容 41四上机作业 42第六章 PL/SQL 43一上机目的 43二预备知识 43三上机内

2、容 54四上机作业 57第七章 触发器和游标 58一上机目的 58二预备知识 58三上机内容 63四上机作业 66第一章 Oracle基本知识与SQL*PLUS环境一上机目的1 熟悉Oracle的基本知识。2 熟悉Oracle的命令操作环境SQL*PLUS。3 熟悉并掌握一些SQL*PLUS命令。二预备知识1Oracle数据库管理系统简介1979年,硅谷的一个小公司推出了Oracle,这是第一个与数据访问语言SQL结合的关系数据库。今天,Oracle公司已是世界上数据库管理系统及相关产品的最大供应商。发布于1985年的Oracle第5版,是第一个真正的客户/服务器数据库系统。Oracle 8以

3、及Oracle 8i是Oracle公司的最新产品。2Oracle服务器Oracle服务器是一个精致的信息管理环境。它是一个大量数据的储藏所,并给用户提供对这些数据的快速访问。Oracle服务器允许应用系统之间共享数据。信息存放在一个地方并由许多应用系统来使用。Oracle服务器可运行在Sun系列以及Windows NT上。Oracle服务器运行在很多不同的计算机上,支持下列配置: 基于主机的配置 用户直接连到存放数据库的同一计算机上。 客户机/服务器结构 用户通过网络从他们的个人计算机(客户机)上访问数据库,数据库驻留在一个分离的计算机(服务器)上。 分布式处理 用户访问存放在不止一台计算机上

4、的数据库。数据库分散在不止一台机器上,用户并不需要了解他们存放的数据的实际存放位置。 Web计算 能从基于Internet的应用程序访问数据。3SQL,SQL*Plus 和 PL/SQL SQL 是一种能够访问关系数据库(包括Oracle数据库)的语言。它能够用在每一个Oracle工具中。 SQL*Plus 是一个SQL和PL/SQL都能用的Oracle产品,并且也有自己的命令语言。 PL/SQL是为了编写应用程序和操作数据的Oracle过程化语言,包含着SQL命令的子集,它适用于每个CDE产品。4Oracle数据库系统的体系结构Oracle数据库系统是具有管理Oracle数据库功能的计算机软

5、件系统。每一个运行的Oracle数据库与一个Oracle实例(instance)相联系。一个Oracle实例是存取和控制一数据库的软件机制。每一次在数据库服务器上启动一数据库时,称为系统全局区(system global area)的一内存区(简称SGA)被分配,有一个或多个Oracle进程被起动。该SGA和Oracle进程的结合称为一个Oracle数据库实例。一个实例的SGA和进程为管理数据库数据、为该数据库一个或多个用户服务而工作。在Oracle系统中,首先是实例启动,然后由实例装配(mount)一个数据库。1) 进程结构进程(process)是操作系统中的一种机制,它可执行一系列的操作步

6、骤。在有些操作系统中使用作业(JOB)或任务(TASK)的术语。一个进程通常有它自己的专用存储区。Oracle进程的体系结构设计使性能最大。Oracle实例有两种类:单进程实例和多进程实例。单进程Oracle(又称单用户Oracle)是一个数据库系统,一个进程执行全部Oracle代码。由于Oracle部分和客户应用程序不能分别以进程执行,所以Oracle的代码和用户数据库应用是单个进程执行,其结构如图1-2所示。在单进程环境下的Oracle实例,仅允许一个用户存取。例如在MS-DOS上运行Oracle。多进程Oracle实例(又称多用户Oracle)使用多个进程来执行Oracle的不同部分,对

7、于每一个连接的用户都有一个进程,如图1-3所示。在多进程系统中,进程分为两类:用户进程和Oracle进程。当一用户运行一应用程序,如Pro*c程序或一个Oracle工具(如SQL*Plus),为用户运行的应用建立一个用户 进程。Oracle进程又分为两类:服务器进程(server process)和后台进程(background process),服务器进程用于处理连接到该实例的用户进程的请求。当应用和Oracle是在同一台机器上运行,而不再通过网络,一般将用户进程和它相应的服务器进程组合成单个进程,可降低系统开销。然而,当应用和Oracle运行在不同的机器上时,用户进程经一个分离服务器进程O

8、racle通信。它执行下列任务: 对应用所发出的SQL语句进行语法分析和执行。 从磁盘(数据文件中)读入必要的数据块到SGA的共享数据库缓冲区(该块不在缓冲区时)。 将结果返回给应用程序处理。系统为了使性能最好和协调多个用户,在多进程系统中使用一些附加进程,称为后台进程。在许多操作系统中,后台进程是在实例启动时自动地建立。一个Oracle实例可以有许多后台进程,但它们不是一直存在。后台进程的名字为: DBWR 数据库写入程序 LGWR 日志写入程序 CKPT 检查点 SMON 系统监控 PMON 进程监控 ARCH 归档 RECO 恢复 LCKn 封锁 Dnnn 调度进程 Snnn 服务器2)

9、 内存结构Oracle在内存存储下列信息: 执行的程序代码。 连接的会话信息(包括当前不活动的)。 程序执行期间所需要数据(如查询的当前状态)。 Oracle进程间通信和共享的信息(如封锁信息)。 存储在外存储上的缓冲信息。Oracle具有下列基本的内存结构: 软件代码区 系统全局区(SGA),包括数据库缓冲存储区、日志缓冲区和共享池 程序全局区(PGA),包括栈区和数据区。 排序区(sort area)。5SQL*Plus命令SQL*Plus有许多命令,表1-1只是列举了一部分常用命令。表1-1 常用SQL*Plus命令SQL*Plus命令缩写意义APPEND textA text把字符串增

10、加到当前行的末尾CHANGE /old/new/C/old/new/把当前行的旧字符串替换成新字符串CHANGE /text/C/text/把当前行中字符串删除CLEAR BUFFERCL BUFF从SQL缓冲区中删除所有行CONNECT userid/passwordCONN userid/password在当前的登录下,击活其它的Oracle用户DEL删除当前行DESCRIBE tablenameDESC tablename显示任何数据库表的数据结构ED filename用默认的编辑器编辑保存的文件内容EXIT退出SQL*PlusGET filename把以filename为名字的文件内容

11、调入SQL缓冲区中INPUTI插入许多行INPUT textI text插入一个包含text字符串的行HELP击活Oracle内部的帮助部件HOST command在SQL*Plus中击活一个操作系统命令LISTL显示SQL缓冲区的所有行LIST nL n显示SQL缓冲区中的一行到n行LIST m nL m nSQL缓冲区中的从第m行显示到第n行PROMPT text当运行一个命令文件时,显示文本RUNR显示并运行在缓冲区中的当前SQL命令RUNFORM filename从SQL*Plus中运行一个Oracle Forms应用程序SAVE filename把SQL缓冲区中的内容保存到以file

12、name为名字的文件中,默认路径为orawinbinSPOOL filename写所有的后面的命令或者输出到一个已经命名的文件中。假脱机输入输出文件的后缀为.LISSPOOL OFF|OUTOFF 关闭假脱机输入输出文件;OUT改变假脱机输入输出,送文件到打印机上START filename filename运行以前保存的命令文件三上机内容进入ORACLE 中SQL*PLUS环境 单击开始程序OracleOraHhome9iApplication DevelopmentSQL_PLUS,则弹出如下注册窗口,输入合法的用户名和口令,并单击确定按钮,进入SQL*PLUS1 SQL*Plus的启动当

13、登录到操作系统后,有三种方法启动SQL*Plus。1) SQLPLUS(或 SQLPLUSW,下同)将看到如下的信息:SQL*Plus: Release 9.0.1.0.1 - Production on 星期二 9月 13 14:27:51 2011(c) Copyright 2001 Oracle Corporation. All rights reserved.请输入用户名:输入你的用户名字并按回车。SQL*Plus将提示:请输入口令:输入你的密码并按回车。那么,将看到SQL*Plus的提示符:SQL例如:SQLPLUSSQL*Plus: Release 9.0.1.0.1 - Prod

14、uction on 星期二 9月 13 14:27:51 2011(c) Copyright 2001 Oracle Corporation. All rights reserved.Enter Username:scottEnter Password:tigerSQL2) SQLPLUS Username再提示你输入密码。例如:SQLPLUS scottEnter Password: tigerSQL*Plus: Release 9.0.1.0.1 - Production on 星期二 9月 13 14:27:51 2011(c) Copyright 2001 Oracle Corpora

15、tion. All rights reserved.SQL3) SQLPLUS username/password例如:SQLPLUS scott/tigerSQL*Plus: Release 9.0.1.0.1 - Production on 星期二 9月 13 14:27:51 2011(c) Copyright 2001 Oracle Corporation. All rights reserved.SQL4) 断开与数据库的连接 SQLDISCONNECT5) 退出SQL*PlusSQLEXIT或:SQLQuit6) 创建基本表EMP,表结构如下所示:crate table EMP(E

16、MPNO,NUMBER(4) NOT NULL PRIMARY KEY,ENAME VARCHAR2(10),JOB VARCHAR2(9),MGR NUMBER(4),HIREDATE DATE,SAL NUMBER(7,2),COMM NUMBER(7,2),DEPTNO NUMBER(2) NOT NULL);7) 向EMP表中插入数据:insert into EMP values(7369,SMITH,CLERK,7902,to_date(1980121712,yyyymmdd),800,20);insert into EMP values(7499,ALLEN,SALESMAN,76

17、98,to_date(1981022012,yyyymmdd),1600,300,30);insert into EMP values(7521,WARD,SALESMAN,7698,to_date(1981022212,yyyymmdd),1250,500,30);insert into EMP values(7566,JONES,MANAGER,7839,to_date(1981040212,yyyymmdd),2975,20);insert into EMP values(7654,MARTIN,SALESMAN,7698,to_date(1981092812,yyyymmdd),125

18、0,1400,30);insert into EMP values(7698,BLAKE,MANAGER,7839,to_date(1981050112,yyyymmdd),2850,30);insert into EMP values(7782,CLARK,MANAGER,7839,to_date(1981060912,yyyymmdd),2450,10);insert into EMP values(7788,SCOTT,ANALYST,7566,to_date(1987041912,yyyymmdd),3000,20);insert into EMP values(7839,KING,P

19、RESIDENT,to_date(1981111712,yyyymmdd),5000,10);insert into EMP values(7844,TURNER,SALESMAN,7698,to_date(1981090812,yyyymmdd),1500,0,30);insert into EMP values(7876,ADAMS,CLERK,7788,to_date(1987052312,yyyymmdd),1100,20);insert into EMP values(7900,JAMES,CLERK,7698,to_date(1981120312,yyyymmdd),950,30)

20、;insert into EMP values(7902,FORD,ANALYST,7566,to_date(1981120312,yyyymmdd),3000,20);insert into EMP values(7934,MILLER,CLERK,7782,to_date(1982012312,yyyymmdd),1300,10);2 SQL命令SQL命令包括数据定义语言(如Create、Alter等)和数据操作语言(Select Insert Update Delete等),这些都可在SQL*Plus中使用。如:SQLSELECT EMPNO, ENAME, JOB, SAL 2 FRO

21、M EMP WHERE SAL LISTSQL*Plus显示当前缓冲区中的SQL命令(注意:不缓存SQL Plus命令):1 SELECT EMPNO, ENAME, JOB, SAL 2 FROM EMP WHERE SAL SELECT EPNO, ENAME, JOB, SAL 2 FROM EMP WHERE SAL CHANGE /EPNO/EMPNO修改的行在屏幕上显示:1* SELECT EMPNO, ENAME, JOB, SAL 再用RUN命令运行当前命令。SQLRUN(或 /)SQL*PLUS列出其命令然后运行它。1 SELECT EMPNO, ENAME, JOB, SA

22、L 2 FROM EMP WHERE SAL INPUT3接着可进入新行,然后按ENTER键,SQL*PLUS再次提示新行:3 ORDER BY SAL4按ENTER键,表示不进入任何行,然后用RUN检验和重新运行查询。4) 在一行上添加一原文用APPEND命令,将一原文加到缓冲区中当前行的末端:SQLLIST3* ORDER BY SALSQLAPPEND DESC3* ORDER BY SAL DESC使用RUN检验和重新运行查询。5) 删除一行 用LIST命令列出要删除的行。 用DEL命令删除。SQLLIST3* ORDER BY SAL DESCSQLDEL6) 用系统编辑程序编辑命令

23、在SQL*PLUS中运行操作系统缺省的文本编辑程序(EDIT),命令形式为:SQLEDITEDIT将缓冲区中的内容装入系统缺省的文本编辑器,然后用文本编辑器的命令编辑文本。完成后保存编辑的文本,然后退出。该文本保存到当前的缓冲区。7) 保存SAVE命令SQLSAVE 文件名例如:SQLLIST1 SELECT EMPNO, ENAME, JOB, SAL 2 FROM EMP WHERE SAL SAVE empinfoCreated file empinfo8) 运行命令文件可用命令START 文件名或者 文件名的命令格式。如上例:SQLSTART EMPINFO或SQL EMPINFO9)

24、 清缓冲区SQLCLEAR BUFFER10) DESCRIBE列出表的结构如:SQLDESC EMP NameNull?TypeEMPNONOT NULLNUMBER(4)ENAMEVARCHAR2(10)JOBVARCHAR2(10)MGRNUMBER(4)HIREDATEDATESALNUMBER(7,2)COMMNUMBER(7,2)DEPTNONOT NULLNUMBER(2)四上机作业1 用SQL Plus连接数据库。2 用Show命令显示当前用户。3 练习SQL命令:SELECT * FROM EMP;。4 用LIST显示缓冲区内容。5 用CHANGE命令修改当前行。6 用APP

25、END增加一部分命令。7 用EDIT编辑缓冲区内容。8 用SAVE命令保存缓冲区内容到EMPFILE中。9 用START命令运行EMPFILE文件。10 清除缓冲区。第二章 数据表的创建一上机目的1 了解并掌握Oracle中表结构的定义。2 了解并掌握Oracle中的用Create命令定义表的方法,以及表的完整性定义。3 了解并掌握Oracle中的用Alter命令 和Drop命令对表的修改和删除。二预备知识DDL是SQL命令的子集,用来创建、修改、删除Oracle数据库结构。这些命令能立即影响数据库和数据字典字段信息。1 表名命名规则所用的表名必须满足下面的条件:a) 名字必须以A-Z 或a-

26、z的字母开始;b) 名字可以包括字母、数字和特殊字母(_)。字符$和#也是合法的,但是这种用法不提倡;c) 名字大小写是一样的;例如EMP、emp和eMp是表示同一个表;d) 名字最长不超过30个字符;e) 表名不能和其它的对象重名;f) 表名不能是SQL保留字。表2-1 表名命名举例名 字合 法EMP85YES85EMPNO(开始不是字母)FIXED_ASSETSYESFIXED ASSETSNO(包含空格)UPDATENO(SQL保留字)2 字段类型表2-2 字段类型数据类型描述VARCHAR2(w)变长字符,长度为w。最长为2000个字符。CHAR(w)定长字符,长度为w。默认为1个字符

27、;最长为255个字符NUMBER38位有效数字的浮点数NUMBER(w)W位精确度的整数,范围从1至38NUMBER(w,s)W是精度,或总的数字位,范围从1至38。S是比例,或是小数点右边的数字位。比例的范围从-84至127DATE日期值,范围从公元前14712年1月到公元314712年12月LONG变长字符串,其最大长度为2G(或231-1个字节)RAW 和LONG RAW面向字节数据,可存储字符串、浮点数,二进制数据等3 Create命令1)、CREATE TABLE table_name( column_name type(size), column_name type(size),

28、);例如:CREATE TABLE DEPT(DEPTNO NUMBER(2),DNAME VARCHAR2(12),LOC VARCHAR2(12);2)、CREATE TABLE table_name (column_name,) AS SELECT statement;例如:CREATE TABLE DEPTNO10 (NAME,LOCATION)AS SELECT DNAME,LOC FROM DEPTWHERE DEPTNO = 10;4完整性约束Oracle允许用户为表和列定义完整性约束来增强一定的规则。可分为:表约束和字段约束5约束类型1)、NOT NULL约束NOT NULL约束保证字段值不能为NULL。没有NOT NULL约束的字段,值可以为NULL。2)、UNIQUE约束指定一个字段或者字段的集合为唯一键。在表中没有两行具有相同的值。如果唯一键是基于单条记录的,NULL是允许的。表约束命令格式:,CONSTRAINT constraint_name UNIQUE (Column, Column, )字段约束命令格式:

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1