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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

Oracle数据库系统实验上机内容指导书2.docx

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

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

3、存放的数据的实际存放位置。 Web计算 能从基于Internet的应用程序访问数据。3 Personal Oracle从1995年处开始,Oracle推出了在Dos和Microsoft Windows环境下的个人计算机产品。运行Personal Oracle需要如下的配置: 386以上的中央处理单元(CPU),推荐486或奔腾。 最小60MB磁盘空间。 处理器速度不低于40MHZ,66MHZ以上更好。 最少16MB的扩充内存。 Microsoft Windows95或者NT.本书主要以Personal Oracle为主进行说明。4Oracle产品5SQL,SQL*Plus 和 PL/SQL S

4、QL 是一种能够访问关系数据库(包括Oracle数据库)的语言。它能够用在每一个Oracle工具中。 SQL*Plus 是一个SQL和PL/SQL都能用的Oracle产品,并且也有自己的命令语言。 PL/SQL是为了编写应用程序和操作数据的Oracle过程化语言,包含着SQL命令的子集,它适用于每个CDE产品。6Oracle数据库系统的体系结构Oracle数据库系统是具有管理Oracle数据库功能的计算机软件系统。每一个运行的Oracle数据库与一个Oracle实例(instance)相联系。一个Oracle实例是存取和控制一数据库的软件机制。每一次在数据库服务器上启动一数据库时,称为系统全局

5、区(system global area)的一内存区(简称SGA)被分配,有一个或多个Oracle进程被起动。该SGA和Oracle进程的结合称为一个Oracle数据库实例。一个实例的SGA和进程为管理数据库数据、为该数据库一个或多个用户服务而工作。在Oracle系统中,首先是实例启动,然后由实例装配(mount)一个数据库。1) 进程结构进程(process)是操作系统中的一种机制,它可执行一系列的操作步骤。在有些操作系统中使用作业(JOB)或任务(TASK)的术语。一个进程通常有它自己的专用存储区。Oracle进程的体系结构设计使性能最大。Oracle实例有两种类:单进程实例和多进程实例。

6、单进程Oracle(又称单用户Oracle)是一个数据库系统,一个进程执行全部Oracle代码。由于Oracle部分和客户应用程序不能分别以进程执行,所以Oracle的代码和用户数据库应用是单个进程执行,其结构如图1-2所示。在单进程环境下的Oracle实例,仅允许一个用户存取。例如在MS-DOS上运行Oracle。多进程Oracle实例(又称多用户Oracle)使用多个进程来执行Oracle的不同部分,对于每一个连接的用户都有一个进程,如图1-3所示。在多进程系统中,进程分为两类:用户进程和Oracle进程。当一用户运行一应用程序,如Pro*c程序或一个Oracle工具(如SQL*Plus)

7、,为用户运行的应用建立一个用户 进程。Oracle进程又分为两类:服务器进程(server process)和后台进程(background process),服务器进程用于处理连接到该实例的用户进程的请求。当应用和Oracle是在同一台机器上运行,而不再通过网络,一般将用户进程和它相应的服务器进程组合成单个进程,可降低系统开销。然而,当应用和Oracle运行在不同的机器上时,用户进程经一个分离服务器进程Oracle通信。它执行下列任务: 对应用所发出的SQL语句进行语法分析和执行。 从磁盘(数据文件中)读入必要的数据块到SGA的共享数据库缓冲区(该块不在缓冲区时)。 将结果返回给应用程序处理

8、。系统为了使性能最好和协调多个用户,在多进程系统中使用一些附加进程,称为后台进程。在许多操作系统中,后台进程是在实例启动时自动地建立。一个Oracle实例可以有许多后台进程,但它们不是一直存在。后台进程的名字为: DBWR 数据库写入程序 LGWR 日志写入程序 CKPT 检查点 SMON 系统监控 PMON 进程监控 ARCH 归档 RECO 恢复 LCKn 封锁 Dnnn 调度进程 Snnn 服务器2) 内存结构Oracle在内存存储下列信息: 执行的程序代码。 连接的会话信息(包括当前不活动的)。 程序执行期间所需要数据(如查询的当前状态)。 Oracle进程间通信和共享的信息(如封锁信

9、息)。 存储在外存储上的缓冲信息。Oracle具有下列基本的内存结构: 软件代码区 系统全局区(SGA),包括数据库缓冲存储区、日志缓冲区和共享池 程序全局区(PGA),包括栈区和数据区。 排序区(sort area)。7SQL*Plus命令SQL*Plus有许多命令,表1-1只是列举了一部分常用的供读者参考。表1-1 常用SQL*Plus命令SQL*Plus命令缩写意义APPEND textA text把字符串增加到当前行的末尾CHANGE /old/new/C/old/new/把当前行的旧字符串替换成新字符串CHANGE /text/C/text/把当前行中字符串删除CLEAR BUFFE

10、RCL BUFF从SQL缓冲区中删除所有行DEL删除当前行INPUTI插入许多行INPUT textI text插入一个包含text字符串的行LISTL显示SQL缓冲区的所有行LIST nL n显示SQL缓冲区中的一行到n行LIST m nL m nSQL缓冲区中的从第m行显示到第n行RUNR显示并运行在缓冲区中的当前SQL命令SAVE filename把SQL缓冲区中的内容保存到以filename为名字的文件中,默认路径为orawinbinGET filename把以filename为名字的文件内容调入SQL缓冲区中START filename filename运行以前保存的命令文件ED f

11、ilename用默认的编辑器编辑保存的文件内容EXIT退出SQL*PlusRUNFORM filename从SQL*Plus中运行一个Oracle Forms应用程序SPOOL filename写所有的后面的命令或者输出到一个已经命名的文件中。假脱机输入输出文件的后缀为.LISSPOOL OFF|OUTOFF 关闭假脱机输入输出文件;OUT改变假脱机输入输出,送文件到打印机上DESCRIBE tablenameDESC tablename显示任何数据库表的数据结构HELP击活Oracle内部的帮助部件HOST command在SQL*Plus中击活一个操作系统命令CONNECT userid/

12、passwordCONN userid/password在当前的登录下,击活其它的Oracle用户PROMPT text当运行一个命令文件时,显示文本三上机内容1 SQL*Plus的启动当读者登录到操作系统后,你有三种方法启动SQL*Plus。1) SQLPLUS读者将看到如下的信息:SQL*Plus: Version 3.1.1 Production on Mon Oct 4 1993Copyright (C) 1992, Oracle Corporation, California, USA.All rights reserved.Enter Username:输入你的用户名字并按回车。S

13、QL*Plus将提示:Enter Password:输入你的密码并按回车。那么,读者将看到SQL*Plus的提示符:SQL例如:SQLPLUSSQL*Plus: Release 9.2.0.1.0 - Production on 星期二 10月 30 10:15:04 2007Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.连接到: Oracle9i Enterprise Edition Release 9.2.0.1.0 - ProductionWith the Partitioning, OLAP and

14、Oracle Data Mining optionsJServer Release 9.2.0.1.0 - ProductionEnter Username:scottEnter Password:tigerSQL2) SQLPLUS Username再提示你输入密码。例如:SQLPLUS scottEnter Password: tigerSQL*Plus: Version 3.1.1 Production on Mon Oct 4 1993Copyright (C) 1992, Oracle Corporation, California, USA.All rights reserved.

15、SQL3) SQLPLUS username/password例如:SQLPLUS scott/tigerSQL*Plus: Version 3.1.1 Production on Mon Oct 4 1993Copyright (C) 1992, Oracle Corporation, California, USA.All rights reserved.SQL4) 退出SQL*PlusSQLEXITSQL*Plus显示Oracle版本之后显示操作系统提示符。2 SQL命令SQL命令包括数据定义语言(如Create、Alter等)和数据操作语言(Select Insert Update D

16、elete等),这些都可在SQL*Plus中使用。如:SQLSELECT EMPNO, ENAME, JOB, SAL 2 FROM EMP WHERE SAL LISTSQL*Plus显示当前缓冲区中的命令:1 SELECT EMPNO, ENAME, JOB, SAL 2 FROM EMP WHERE SAL SELECT EPNO, ENAME, JOB, SAL 2 FROM EMP WHERE SAL CHANE /EPNO/EMPNO修改的行在屏幕上显示:1* SELECT EMPNO, ENAME, JOB, SAL 再用RUN命令运行当前命令。SQLRUNSQL*PLUS列出其

17、命令然后运行它。1 SELECT EMPNO, ENAME, JOB, SAL 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*

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

19、令格式。如上例:SQLSTART EMPINFO或SQL EMPINFO9) 清缓冲区SQLCLEAR BUFFER10) DESCRIBE列出表的结构如:SQLDESC EMP NameNull?TypeEMPNONOT NULLNUMBER(4)ENAMEVARCHAR2(10)JOBVARCHAR2(10)MGRNUMBER(4)HIREDATEDATESALNUMBER(7,2)COMMNUMBER(7,2)DEPTNONOT NULLNUMBER(2)4 PL/SQL命令SQLDeclare1 Begin2 SELECT * FROM EMP;3 EXCEPTION4 WHEN NO

20、_DATA_FOUND THEN5 RASIE_APPLICATION_ERROR(-12201,No data found)6 End;查询结果将显示出来。四上机作业1 练习SQL命令:SELECT * FROM EMP;。2 用LIST显示缓冲区内容。3 用CHANGE命令修改当前行。4 用APPEND增加一部分命令。5 用EDIT编辑缓冲区内容。6 用SAVE命令保存缓冲区内容到EMPFILE中。7 用START命令运行EMPFILE文件。8 清除缓冲区。第二章 数据表的创建一上机目的1 了解并掌握Oracle中表结构的定义。2 了解并掌握Oracle中的用Create命令定义表的方法,

21、以及表的完整性定义。3 了解并掌握Oracle中的用Alter命令 和Drop命令对表的修改和删除。二预备知识DDL是SQL命令的子集,用来创建、修改、删除Oracle数据库结构。这些命令能立即影响数据库和数据字典字段信息。1 表名命名规则所用的表名必须满足下面的条件:a) 名字必须以A-Z 或a-z的字母开始;b) 名字可以包括字母、数字和特殊字母(_)。字符$和#也是合法的,但是这种用法不提倡;c) 名字大小写是一样的;例如EMP、emp和eMp是表示同一个表;d) 名字最长不超过30个字符;e) 表名不能和其它的对象重名;f) 表名不能是SQL保留字。表2-1 表名命名举例名字合法EMP

22、85YES85EMPNO(开始不是字母)FIXED_ASSETSYESFIXED ASSETSNO(包含空格)UPDATENO(SQL保留字)2 字段类型表2-2 字段类型数据类型描述VARCHAR2(w)变长字符长度为w。最长为2000个字符。CHAR(w)定长字符长度为w。默认为1个字符;最长为255个字符NUMBER38位有效数字的浮点数NUMBER(w)W位精确度的整数,范围从1至38NUMBER(w,s)W是精度,或总的数字书,范围从1至38。S是比例,或是小数点右边的数字位。比例的范围从-84至127DATE日期值,范围从公元前14712年1月到公元314712年12月LONG变长

23、字符串,其最大长度为2G(或231-1个字节)RAW 和LONG RAW面向字节数据,可存储字符串、浮点数,二进制数据等3 Create命令1)、CREATE TABLE table_name( column_name type(size), column_name type(size), );例如:CREATE TABLE DEPT(DEPTNO NUMBER(2),DNAME VARCHAR2(12),LOC VARCHAR2(12);2)、CREATE TABLE table_name (column_name,) AS SELECT statement;例如:CREATE TABLE

24、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 (Colum

25、n, Column, )字段约束命令格式:CONSTRAINT constraint_name UNIQUE例如:CREATE TABLE DEPT(DEPTNO NUMBER, DNAME VARCHAR2(9),LOC VARCHAR2(10),CONSTRAINT UNQ_DEPT_LOC UNIQUE(DNAME,LOC);UNQ_DEPT_LOC是一个表约束。3)、主键约束(Primary Key Constraint)主键约束强制字段和字段集合的唯一性,并且用一个唯一索引来管理它。每个表中只能用一个主键,这样可以通过主键来标识表中的每条记录。NULL值不允许在主键字段出现。表约束命

26、令格式:,CONSTRAINT constraint_name PRIMARY KEY (Column, Column, )字段约束命令格式:CONSTRAINT constraint_name PRIMARY KEY例如:用字段约束定义DEPTNO为主键CREATE TABLE DEPT(DEPTNO NUMBER(2) CONSTRAINT DEPT_PRIM PRIMARY KEY,);4)、外键约束外键提供表内或表间的完整性规则。外键必须依赖于一个primary或unique key。表约束命令格式:,CONSTRAINT constraint_name FOREIGN KEY (Co

27、lumn, Column, ) REFERENCE table (column, column, )字段约束命令格式:CONSTRAINT constraint_name FOREIGN KEY table (column)例如:CREATE TABLE EMP(CONSTRAINT FK_DEPTNO FOREIGN KEY (DEPTNO) REFERENCE DEPT(DEPTNO);5)、Check约束CHECK约束定义了每条记录必须满足的条件语法:CONSTRAINT constraint_name CHECK (condition)6 Alter命令ALTER TABLE命令可用来

28、修改数据表的定义。命令格式:ALTER TABLE tablenameADD或MODIFY或DROP options (column_spec column_constraint) ENABLE clause 或DISABLE clause ADD关键字可以用来给已存在的数据表增加一个字段或约束。如:给EMP增加一个字段ALTER TABLE EMPADD (SPOUSES_NAME CHAR(10));Table altered。MODIFY关键字可以用来修改已存在的数据表定义。如:把EMP中ENAME长度改为25个字符ALTER TABLE EMPMODIFY (ENAM CHAR(25);Table altered。DROP关键字可以用来删除已存在数据表的约束。如:把EMP中主键删除ALTER TABLE EMPDROP PRIMARY KEY;Table altered。7 Drop 命令用DROP TABLE命令删除Oracle数据表的定义。命令格式:DROP TABLE table_name CASCADE CONSTRAINT例如:DROP TABLE EMP;CASCADE CONSTRAINT选项说明了也把完整性约束一起删除。注意: DROP TABLE也把数据表中的数据删除。 数据表

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

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