当前位置: 首页 > 图文教程 > 数据库 > Oracle > Oracle存储过程入门学习基本语法

Oracle
Oracle数据库的安全策略
ORACLE应用经验(2)
在ORACLE移动数据库文件
Microsoft SQL Server 安全问题
Oracle数据库技术(37)
Oracle数据库技术(38)
Access2000迁移到Oracle9i要点
数据库Oracle数据的异地的自动备份
安装Oracle加载数据库错误areasQueries的解决
Oracle数据库逻辑备份的SH文件
Oracle常见错误诊断
Oracle9i在Win2k环境下的完全卸载
Oracle数据库快照的使用
Oracle9i数据库异常关闭后的启动
Oracle也有注入漏洞
Oracle9iPL/SQL编程的经验小结
oracle用什么SQL语句判断表存不存在
Oracle SQL性能优化系列学习三
用Oracle并行查询发挥多CPU的威力
oracle快速删除重复的记录

Oracle存储过程入门学习基本语法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 56 ::
收藏到网摘: n/a

Oracle存储过程基本语法学习入门必备

1.基本结构
  create OR REPLACE PROCEDURE存储过程名字
  (
  参数1 IN NUMBER,
  参数2 IN NUMBER
  ) IS
  变量1 INTEGER :=0;
  变量2 DATE;
  BEGIN
  END 存储过程名字
  2.select INTO STATEMENT
  将select查询的结果存入到变量中,可以同时将多个列存储多个变量中,必须有一条记录,否则抛出异常(如果没有记录抛出NO_DATA_FOUND)
  例子:
  BEGIN
  select col1,col2 into 变量1,变量2 FROM typestruct where xxx;
  EXCEPTION
  WHEN NO_DATA_FOUND THEN
     xxxx;
  END;
  ...
  3.IF 判断
  IF V_TEST=1 THEN
    BEGIN
     do something
    END;
  END IF;
  4.while 循环
  WHILE V_TEST=1 LOOP
  BEGIN
 XXXX
  END;
  END LOOP;
  5.变量赋值
  V_TEST := 123;
  6.用for in 使用cursor
  ...
  IS
  CURSOR cur IS select * FROM xxx;
  BEGIN
 FOR cur_result in cur LOOP
  BEGIN
   V_SUM :=cur_result.列名1+cur_result.列名2
  END;
 END LOOP;
  END;
  7.带参数的cursor
  CURSOR C_USER(C_ID NUMBER) IS select NAME FROM USER where TYPEID=C_ID;
  OPEN C_USER(变量值);
  LOOP
  FETCH C_USER INTO V_NAME;
  EXIT FETCH C_USER%NOTFOUND;
   do something
  END LOOP;
  CLOSE C_USER;
  8.用pl/sql developer debug
  连接数据库后建立一个Test WINDOW
  在窗口输入调用SP的代码,F9开始debug,CTRL+N单步调试