Oracle数据库教程:PL/SQL笔记

2014-11-24 18:34:49 · 作者: · 浏览: 1



PL/SQL是强大的数据库过程语言!


重要的是:重要的是PL/SQL紧密的结合在Oracle数据库里面。


PL/SQL是Oracle数据库使用的三种语言的其中之一,另外两个是SQL和Java。


功能近似PL/SQL的程序语言和其他关系型数据库:Sybase ASE、Microsoft SQL Server的Transact-SQL,PostgreSQL数据库的PL/pgSQL(模仿PL/SQL)和IBM DB2的SQL PL[1],都符合ISO SQL的SQL/PSM标准。


---------------------------------------------------------------------------------------------------


pl/sql的优点:


提高应用程序的运行性能、模块化设计、减少网络传输量、提高安全性


(传统的数据库操作,我们想想:SQL语句写在java程序访问数据库,首先获得连接,编译SQL语句,使得数据库能够认识你的SQL语句,这里每次编译就浪费了一些时间,当数据访问量很大的时候,你的程序性能就比较差了!这里如果我们把某些操作写为一个过程,比如分页、转账过程(功能划分为一个模块,由专人负责维护……)。就可以使得我们的程序性能大大提高,从而数据库操作作为一个模块,当java程序调用时就是调用已经编译的SQL语句,所以在进行程序优化时可以考虑用存储过程进行优化。)


【当然还有其他有点好处,欢迎补充】


缺点:


当需要换数据库时,移植性存在缺陷


|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||




PL/SQL编写规范:


A:


单行注释:--


多行注释:/*……*/


B:


标识符的命名规范:


a.定义变量,建议用v_作为前缀, 例:v_sale


b.定义常量,建议用c_作为前缀,例:c_rate


c.定义游标,建议用_cursor作为后缀例:emp_cursor


d.定义例外,建议用e_作为前缀例:e_error


-----------------------------------------------------------------------------------


PL/SQL是以块为基本单位,块分类{主要有存储过程,函数,触发器,包}


块(block)的介绍:


上面说了,PL/SQL是以块为基本单位,,我们编写PL/SQL就是在编写块,简单的应用功能,我们可能只需要一个PL/SQL块就可以实现,复杂的功能就需要多个块了,块可以嵌套。


块由三部分组成:{定义部分、执行部分、例外处理部分},即:


declare (可选)


/*声明部分---定义常量、变量。游标、例外、复杂数据类型*/


begin (必须滴)


/*执行部分---需要执行的pl/sql语句和SQL语句*/


exception(可选的)


/*处理运行的各种错误*/


end;(必须滴)


编写一个简单的块先:


例子,


这里都会弹出一个框,让输入就是psw的值,where passwd=&psw


例外的情况,如果查询不到数据呢?oracle中会抛出异常,


这里我们就可以使用例外了,Exception