欢迎来到天天文库
浏览记录
ID:41032788
大小:19.23 KB
页数:5页
时间:2019-08-14
《oracle plsql 编程 存储过程》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、oraclepl/sql编程存储过程pl/sql的介绍pl/sql是什么pl/sql(procedurallanguage/sql)是oracle在标准的sql语言上的扩展。pl/sql不仅允许嵌入sql语言,还可以定义变量和常量,允许使用条件语句和循环语句,允许使用例外处理各种错误,这样使得它的功能变得更加大。为什么学pl/sql学习必要性ν1.提高应用程序的运行性能2.模块化的设计思想【分页的过程,订单的过程,转账的过程。。】3.减少网络传输量4.提高安全性(sql会包括表名,有时还可能有密码,
2、传输的时候会泄露。PL/SQL就不会)为什么PL/SQL会快呢?不好的地方:移植性不好(换数据库就用不了),用什么编写pl/sqlsqlplus开发工具νsqlplus是oracle公司提供的一个工具,这个因为我们在以前介绍过的:举一个简单的案例:编写一个存储过程,该过程可以向某表中添加记录。1.创建一个简单的表Sql代码1.createtablemytest(namevarchar2(30),passwdvarchar2(30));-----------------------Page66----
3、-------------------2.创建过程Sql代码1.createorreplaceproceduresp_pro1is2.begin--执行部分3.insertintomytestvalues('韩顺平','m1234');4.end;5./replace:表示如果有sp_pro1,就替换如何查看错误信息:showerror;如何调用该过程:1)exec过程名(参数值1,参数值2...);2)call过程名(参数值1,参数值2...);pl/sqlνdeveloper开发工具pl/sql
4、developer是用于开发pl/sql块的集成开发环境(ide),它是一个独立的产品,而不是oracle的一个附带品。举一个简单案例:编写一个存储过程,该过程可以删除某表记录。Sql代码1.createorreplaceproceduresp_pro2is2.begin--执行部分3.deletefrommytestwherename='韩顺平';4.end;pl/sql基础pl/sql介绍介绍ν开发人员使用pl/sql编写应用模块时,不仅需要掌握sql语句的编写方法,还要掌握pl/sql语句及语
5、法规则。pl/sql编程可以使用变量和逻辑控制语句,从而可以编写非常有用的功能模块。比如:分页存储过程模块、订单处理存储过程模块、转账存储过程模块。而且如果使用pl/sql编程,我们可以轻松地完成非常复杂的查询要求。pl/sql可以做什么简单分类ν
6、————过程(存储过程)
7、
8、————函数-----------------------Page67-----------------------块(编程)—————
9、
10、————触发器
11、
12、————包编写规范编写规范ν1.注释单行注释--Sql代码1.sel
13、ect*fromempwhereempno=7788;--取得员工信息多行注释/*...*/来划分2.标志符号的命名规范1).当定义变量时,建议用v_作为前缀v_sal2).当定义常量时,建议用c_作为前缀c_rate3).当定义游标时,建议用_cursor作为后缀emp_cursor4).当定义例外时,建议用e_作为前缀e_errorpl/sql块介绍介绍ν块(block)是pl/sql的基本程序单元,编写pl/sql程序实际上就是编写pl/sql块,要完成相对简单的应用功能,可能只需要编写一个p
14、l/sql块,但是如果想要实现复杂的功能,可能需要在一个pl/sql块中嵌套其它的pl/sql块。pl/sql块由三个部分构成:定义部分,执行部分,例外处理部分。如下所示:declare/*定义部分——定义常量、变量、游标、例外、复杂数据类型*/begin/*执行部分——要执行的pl/sql语句和sql语句*/exception/*例外处理部分——处理运行的各种错误*/end;定义部分是从declare开始的,该部分是可选的;执行部分是从begin开始的,该部分是必须的;例外处理部分是从except
15、ion开始的,该部分是可选的。可以和java编程结构做一个简单的比较。pl/sql块的实例(1)实例1-只包括执行部分的pl/sql块ν-----------------------Page68-----------------------Sql代码1.setserveroutputon--打开输出选项2.begin3.dbms_output.put_line('hello');4.end;相关说明:dbms_output是oracle所提供的包(类似java的开发包
此文档下载收益归作者所有