Oracle扩展PL/SQL编程简介

简介:

 基本的SQL语句时极其常用的,但相对于SQL而言Oracle公司在SQL基础上引入一种过程化编程语言.PL/SQL(Producedural Language/SQL).PL/SQL构建于SQL自上.可以用来编写SQL语句的程序.PL/SQL是第三代语言.Oracle在此集成之上做的扩展.

(A)PL/SQL基本概念:

PL/SQL也是一种程序语言,叫做过程化SQL语言(Procedural Language/SQL. PL/SQL是Oracle数据库对SQL语句的扩展。在普通SQL语句的使用上增加了编程语言的特点,所以PL/SQL就是把数据操作和查询语句组织在PL/SQL代码的过程性单元中,通过逻辑判断、循环等操作实现复杂的功能或者计算的程序语言.

(B)PL/SQL的作用:

使用PL/SQL可以编写具有很多高级功能的程序,虽然通过多个SQL语句可能也能实现同样的功能,但是相比而言,PL/SQL具有更为明显的一些优点:
(1).能够使一组SQL语句的功能更具模块化程序特点;
(2).采用了过程性语言控制程序的结构;
(3).可以对程序中的错误进行自动处理,使程序能够在遇到错误的时候不会被中断;
(4).具有较好的可移植性,可以移植到另一个Oracle数据库中。
(5).集成在数据库中,调用更快.
(6).减少了网络的交互,有助于提高程序性能.
通过多条SQL语句实现功能时,每条语句都需要在客户端和服务端传递,而且每条语句的执行结果也需要在网络中进行交互,占用了大量的网络带宽,消耗了大量网络传递的时间,而在网络中传输的那些结果,往往都是中间结果,而不是我们所关心的。

 

而使用PL/SQL程序是,因为程序代码存储在数据库中,程序的分析和执行完全在数据库内部进行,用户所需要做的就是在客户端发出调用PL/SQL的执行命令,数据库接收到执行命令后,在数据库内部完成整个PL/SQL程序的执行,并将最终的执行结果返回给用户。在整个过程中网络里只传输了很少的数据,减少了网络传输占用的时间,所以整体程序的执行性能会有明显的提高.

(C)PL/SQL程序的基本结构:

 

 

PL/SQL块由四个基本部分组成:声明、执行体开始、异常处理、执行体结束.下面是四个部分的基本结构:

DECLARE—可选部分:变量、常量、游标、用户定义异常的声明

 ……

 

BEGIN—必要部分:SQL语句和PL/SQL语句构成的执行程序

 

 ……

 

EXCEPTION—可选部分:程序出现异常时,捕捉异常并处理异常

 

   ……

END;—必须部分
在数据库执行PL/SQL程序时,PL/SQL语句和SQL语句是分别进行解析和执行的。 PL/SQL块被数据库内部的PL/SQL引擎提取,将SQL语句取出送给Oracle的SQL引擎处理,两种语句分别在两种引擎中分析处理,在数据库内部完成数据交互、处理过程.

(D)PL/SQL程序在Oracle 10G中的包含内容:

本机上装的的Oracle  10G版本. 在Oracle 10G中包含这类语言的标准编程结构. 例如:

(1)块结构:

(2)变量和类型

(3)条件逻辑

(4)循环处理

(5)游标: Oracle中保存着查询返回的结果.

(6)过程

(7)函数

(8)包: Oralce中主要用来将过程和函数封装组合到一个单元中去.

通常PL/SQL用于向数据库中加入业务逻辑.这种集中化的代码可以由任何能够访问数据库的程序调用. 因为PL/SQL是基于SQL标准自上的. 其中包括SQL*PLus。C程序/Java程序等.

最后推荐各位一本关于Oracle中PL/SQL编程经典书籍;Oracle Database 10G PL/SQL Programming. 中文版已经出版. Orcale 11G 只有英文版本.




本文转自chenkaiunion 51CTO博客,原文链接:http://blog.51cto.com/chenkai/765103

相关文章
|
25天前
|
SQL 数据采集 监控
局域网监控电脑屏幕软件:PL/SQL 实现的数据库关联监控
在当今网络环境中,基于PL/SQL的局域网监控系统对于企业和机构的信息安全至关重要。该系统包括屏幕数据采集、数据处理与分析、数据库关联与存储三个核心模块,能够提供全面而准确的监控信息,帮助管理者有效监督局域网内的电脑使用情况。
18 2
|
17天前
|
SQL 数据挖掘 Python
数据分析编程:SQL,Python or SPL?
数据分析编程用什么,SQL、python or SPL?话不多说,直接上代码,对比明显,明眼人一看就明了:本案例涵盖五个数据分析任务:1) 计算用户会话次数;2) 球员连续得分分析;3) 连续三天活跃用户数统计;4) 新用户次日留存率计算;5) 股价涨跌幅分析。每个任务基于相应数据表进行处理和计算。
|
1月前
|
SQL 监控 Oracle
Oracle SQL性能优化全面指南
在数据库管理领域,Oracle SQL性能优化是确保数据库高效运行和数据查询速度的关键
|
1月前
|
SQL 存储 Oracle
Oracle数据库SQL语句详解与应用指南
在数字化时代,数据库已成为各类企业和组织不可或缺的核心组件。Oracle数据库作为业界领先的数据库管理系统之一,广泛应用于各种业务场景。掌握Oracle数据库的SQL语句是数据库管理员、开发人员及运维人员的基本技能。本文将详细介绍Oracle数据库SQL语句的基本概念、语法、应用及最佳实践。一、Or
60 3
|
1月前
|
SQL Oracle 关系型数据库
Oracle SQL:了解执行计划和性能调优
Oracle SQL:了解执行计划和性能调优
56 1
|
3月前
|
SQL Oracle 关系型数据库
SQL与PL/SQL:数据库编程语言的比较
【8月更文挑战第31天】
71 0
|
3月前
|
SQL 数据库 索引
SQL 编程最佳实践简直太牛啦!带你编写高效又可维护的 SQL 代码,轻松应对数据库挑战!
【8月更文挑战第31天】在SQL编程中,高效与可维护的代码至关重要,不仅能提升数据库性能,还降低维护成本。本文通过案例分析探讨SQL最佳实践:避免全表扫描,利用索引加速查询;合理使用JOIN,避免性能问题;避免使用`SELECT *`,减少不必要的数据传输;使用`COMMIT`和`ROLLBACK`确保事务一致性;添加注释提高代码可读性。遵循这些实践,不仅提升性能,还便于后期维护和扩展。应根据具体情况选择合适方法并持续优化SQL代码。
56 0
|
4月前
|
SQL 存储 Oracle
TDengine 3.3.2.0 发布:新增 UDT 及 Oracle、SQL Server 数据接入
**TDengine 3.3.2.0 发布摘要** - 开源与企业版均强化性能,提升WebSocket、stmt模式写入与查询效率,解决死锁,增强列显示。 - taos-explorer支持geometry和varbinary类型。 - 企业版引入UDT,允许自定义数据转换。 - 新增Oracle和SQL Server数据接入。 - 数据同步优化,支持压缩,提升元数据同步速度,错误信息细化,支持表名修改。 - 扩展跨平台支持,包括麒麟、Euler、Anolis OS等。
128 0
|
1月前
|
存储 Oracle 关系型数据库
Oracle数据库的应用场景有哪些?
【10月更文挑战第15天】Oracle数据库的应用场景有哪些?
171 64
|
26天前
|
SQL Oracle 关系型数据库
Oracle数据库优化方法
【10月更文挑战第25天】Oracle数据库优化方法
33 7

热门文章

最新文章

推荐镜像

更多
下一篇
无影云桌面