Oracle存储过程语法 .

转载 2012年03月30日 09:49:46
1.基本结构CREATE OR REPLACE PROCEDURE 存储过程名字( 参数1 IN NUMBER, 参数2 IN VARCHAR2) IS变量1 INTEGER :=0;变量2 DATE;BEGINEND 存储过程名字//oracle公司推荐使用VARCHAR2,不使用VARCHAR//存储过程传入参数的in可省略,默认就是in//没有bool类型,用int代替2.SELECT INTO STATEMENT 将select查询的结果存入到变量中,可以同时将多个列存储多个变量中,必须有一条 记录,否则抛出异常(如果没有记录抛出NO_DATA_FOUND) 例子: BEGIN SELECT col1,col2 into 变量1,变量2 FROM tbl where xxx; EXCEPTION WHEN NO_DATA_FOUND THEN xxxx; END; ...3.IF 判断if (p2=1) then dbms_output.put_line('111'); elsif p2=2 then dbms_output.put_line('222'); else dbms_output.put_line('else');end if;--如果输出的行太长v_pos:=1;WHILE v_pos<= LENGTH(SqlStr) LOOP DBMS_OUTPUT.PUT_LINE(SUBSTR(SqlStr, v_pos, 200)); v_pos:= v_pos+ 200;END LOOP; 4.while 循环 WHILE V_TEST=1 LOOP BEGIN XXXX END; END LOOP;5.变量赋值 V_TEST := 123;6.用for in 使用cursordeclare cursor cc is select * from tbl order by id; ccrec cc%rowtype; begin for ccrec in cc loop begin dbms_output.put_line(ccrec.ID||'-'||ccrec.Name); end; end loop; end;7.带参数的cursor CURSOR C_USER(C_ID NUMBER) IS SELECT NAME FROM USER WHERE TYPEID=C_ID; OPEN C_USER(变量值); LOOPFETCH 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单步调试

相关文章推荐

oracle存储过程语法

  • 2013年08月14日 00:04
  • 68KB
  • 下载

oracle存储过程语法

  • 2012年12月06日 11:47
  • 52KB
  • 下载

oracle 存储过程的基本语法

1.基本结构  CREATE OR REPLACE PROCEDURE 存储过程名字 (     参数1 IN NUMBER,     参数2 IN NUMBER ) IS 变量1 INT...

oracle存储过程语法

  • 2013年05月28日 01:49
  • 57KB
  • 下载

oracle存储过程语法

  • 2012年12月03日 21:26
  • 55KB
  • 下载

oracle 存储过程的基本语法

oracle 存储过程的基本语法1.基本结构CREATE OR REPLACE PROCEDURE 存储过程名字(    参数1 IN NUMBER,    参数2 IN NUMBER) IS变量1 ...

Oracle存储过程基本语法介绍

Oracle存储过程基本语法 存储过程   1 CREATE OR REPLACE PROCEDURE 存储过程名   2 IS   3 BEGIN   4 NULL;   5 E...
  • aiwinai
  • aiwinai
  • 2015年09月09日 14:12
  • 306

Oracle_存储过程的基本语法

  • 2011年12月09日 12:37
  • 32KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Oracle存储过程语法 .
举报原因:
原因补充:

(最多只允许输入30个字)