oracle存储过程

1.什么是存储过程

  存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,存储在数据库中,经过第一次编译后再次调用不需要再次编译,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。

2.存储过程的优点

  1.允许模块化程序设计,就是说只需要创建一次过程,以后在程序中就可以调用该过程任意次。

  2.允许更快执行,如果某操作需要执行大量SQL语句或重复执行,存储过程比SQL语句执行的要快。

  3.减少网络通信流量,一个需要使用数百条SQL去执行的语句,只需要发送一条执行语句,不需要去发送数百条sql语句。

  4.更好的安全机制,对于没有权限执行存储过程的用户,也可授权他们执行存储过程。

  5.可以更加安全,可以防止sql注入式攻击。

3.存储过程(procedure)和函数(function)的区别

  1.function有返回值,并且可以直接在Query中引用function或者使用function的返回值.

  2.本质上没有区别,都是PL/SQL程序,都可以有返回值。最根本的区别是:存储过程是命令,而函数是表达式的一部分。

  3.package是function,procedure,variavles和sql语句的组合。package允许多个procedure使用同一个变量和游标。

  创建procedure的语法:

  一个简单的sql演示:

 

4.oracle存储过程的基本语法

  1).基本结构

  2).输出语句

  3).赋值语句

  4)select into statement

  5). if语句

  6).while语句


  7).  用for in使用 cursor

 

  8).带参数的 cursor

  9).用pl/sql developer debug

    连接数据库后建立一个Test WINDOW

    在窗口输入调用sp的代码,F9开始debug,CTRL+N单步调试

  10).pl/sql 中执行存储过程

 

posted on 2017-02-24 18:29  Herrt灬凌夜  阅读(168)  评论(0编辑  收藏  举报

导航