教程学院
图像设计 多媒体类 机械制图 办公软件 操作系统 系统编程 网站编程 网页制作 数据库类 网络路由 网络工程 网络安全 考试认证
firefox火狐浏览器下载
酷网学院
CAD
AutoCad Cam350 ProEngineer GCcam MATLAB Unigraphics SolidWorks CAXA Solid3000 Cimatron EdgeCAM
系统
安全 防火墙 病毒 WinXP Win2003 Vista
数据库
编程
网络
精彩图库
  当前位置: 库库中文网 · 数据库类教程 · Oracle教程 · Oracle综合技巧

Oracle培训教材

学院最新推荐文章
教程推荐
『Oracle培训教材』如果文章有大量图片,显示会较慢,请等待图片下载完成
 
点击数: 更新时间:2005-4-4 
是Oracle对SQL规范的扩展,是一种块结构语言,即构成一个PL/SQL程序的基本单位(过程、函数和无名块)是逻辑块,可包含任何数目的嵌套了快。这种程序结构支持逐步求精方法解决问题。一个块(或子块)将逻辑上相关的说明和语句组合在一起,其形式为:

DECLARE

---说明

BEGIN

---语句序列

EXCEPTION

---例外处理程序

END;

它有以下优点:

l 支持SQL;

l 生产率高;

l 性能好;

l 可称植性;

l 与ORACLE集成.

2. PL/SQL体系结构
PL/SQL运行系统是种技术,不是一种独立产品,可认为这种技术是PL/SQL块和子程序的一种机,它可接收任何有效的PL/SQL块或子程序。如图所示:

PL/SQL块

 

PL/SQL机可执行过程性语句,而将SQL语句发送到ORACLE服务器上的SQL语句执行器。在ORACLE预编译程序或OCI程序中可嵌入无名的PL/SQL块。如果ORACLE具有PROCEDURAL选件,有名的PL/SQL块(子程序)可单独编译,永久地存储在数据库中,准备执行。

3. PL/SQL基础:
PL/SQL有一字符集、保留字、标点、数据类型、严密语法等,它与SQL有相同表示,现重点介绍。

1) 数据类型:如下表所示



数据类型
子类型

纯量类型
数值
BINARY_INTEGER
NATURAL,POS99vIVE

NUMBER
DEC,DECIMAL,DOUBLE PRECISION,PLOAT,INTEGER,INT,NUMERIC,REAL,SMALLINT

字符
CHAR
CHARACTER,STRING

VARCHAR2
VARCHAR

LONG


LONG RAW


RAW


RAWID


逻辑
BOOLEAN


日期
DATE


组合

类型
记录
RECORD



TABLE

2) 变量和常量

在PL/SQL程序中可将值存储在变量和常量中,当程序执行时,变量的值可以改变,而常量的值不能改变。

3) 程序块式结构:

DECLARE

变量说明部分;

BEGIN

执行语句部分;

[EXCEPTION

例外处理部分;]

END;

4. 控制语句:
分支语句:

IF condition THEN

Sequence_of_statements;

END IF;

IF condition THEN

Sequence_of_statement1;

ELSE

Sequence_of_statement2;

END IF;

IF condition1 THEN

Sequence_of_statement1;

ELSIF condition2 THEN

Sequence_of_statement2;

ELSIF condition3 THEN

Sequence_of_statement3;

END IF;

5. 循环语句:
LOOP

Sequence_of_statements;

IF condition THEN

EX99v;

END IF;

END LOOP;

WHILE condition LOOP

Sequence_of_statements;

END LOOP;

FOR counter IN lower_bound..higher_bound LOOP

Sequence_of_statements;

END LOOP;

6. 子程序:
存储过程:

CREATE PROCEDURE 过程名 (参数说明1,参数说明2, 。。。) IS

[局部说明]

BEGIN

执行语句;

END 过程名;

存储函数:

CREATE FUNCTION 函数名 (参数说明1,参数说明2, 。。。)

RETURN 类型 IS

[局部说明]

BEGIN

执行语句;

END 函数名;

三.Decode()函数使用技巧
1. 含义解释:
DECODE(条件,值1,翻译值1,值2,翻译值2,...值n,翻译值n,缺省值)

该函数的含义如下:
IF 条件=值1 THEN
     RETURN(翻译值1)
ELSIF 条件=值2 THEN
     RETURN(翻译值2)
     ......
ELSIF 条件=值n THEN
     RETURN(翻译值n)

ELSE
     RETURN(缺省值)
END IF

2. 使用方法:
1) 比较大小
select decode(sign(变量1-变量2),-1,变量1,变量2) from dual; --取较小值
sign()函数根据某个值是0、正数还是负数,分别返回0、1、-1

例如:
变量1=10,变量2=20
则sign(变量1-变量2)返回-1,decode解码结果为“变量1”,达到了取较小值的目的。

 

表、视图结构转化
现有一个商品销售表sale,表结构为:
month    char(6)      --月份
sell    number(10,2)   --月销售

上一页  [1] [2] [3] [4] [5] [6] [7] 下一页  

作者:无 来源:无
】【关闭窗口
·上页:
·下页:
相关文章
     数据库类教程 - Oracle综合技巧
普通教程Oracle 11g R1中大小写敏感地口
普通教程SQL Server与Oracle数据库在安全
普通教程Oracle 11g R1中AWR基线增强(1)
普通教程Oracle学习地一些建议
普通教程一步完成封装编译
普通教程Oracle Warehouse Builder 自动
普通教程Oracle 11gR1中表压缩增强
普通教程Oracle只希望红帽存在 其余Linu
普通教程Oracle中SQL语句执行效率地查询
普通教程Oracle 11gR1中地表空间加密
普通教程Oracle Wait Event:Data file i
普通教程Oracle 11gR1中地SecureFile(1)
精彩图片汇集
advertisement
关于站点 - 广告服务 - 联系我们 - 版权隐私 - 免责声明 - 合作伙伴 - 程序支持 - 网站地图 - 返回顶部
网站文本地图
版权所有:库库中文 2005-2007 欢迎各种媒体转载我们的原创作品[转载请注明出处]
copyright © 2005-2008 www.QQGB.com online services. all rights reserved. 蜀ICP备05015578
Template designed by Virus. Optimized for 1024x768 to Firefox,Opera and MS-IE6. Site powered by EQL.
红盾
热爱电脑,热爱生活
拥有电脑,拥有生命
让我们享受拥有电脑的时光