设为首页 - 加入收藏 ASP站长网(Aspzz.Cn)- 科技、建站、经验、云计算、5G、大数据,站长网!
热搜: 创业者 数据 手机
当前位置: 首页 > 百科 > 正文

ORACLE 存储过程详解(转)(4)

发布时间:2021-01-01 02:02 所属栏目:128 来源:网络整理
导读:将select查询的结果存入到变量中,可以同时将多个列存储多个变量中,必须有一条记录,否则抛出异常(如果没有记录抛出NO_DATA_FOUND)? 例子: ? BEGIN ? SELECT col1,col2 into 变量1,变量2 FROM typestruct where x

将select查询的结果存入到变量中,可以同时将多个列存储多个变量中,必须有一条记录,否则抛出异常(如果没有记录抛出NO_DATA_FOUND)?
例子:

  1. ? BEGIN
  2. ? SELECT col1,col2 into 变量1,变量2 FROM typestruct where xxx;
  3. ? EXCEPTION
  4. ? WHEN NO_DATA_FOUND THEN
  5. ? xxxx;
  6. ? END;

3. IF 判断

  1. ? IF V_TEST=1 THEN
  2. ? BEGIN
  3. ? do something
  4. ? END;
  5. ? END IF;

4. while 循环

  1. ? WHILE V_TEST=1 LOOP
  2. ? BEGIN
  3. ? XXXX
  4. ? END;
  5. ? END LOOP;

5. 变量赋值

 V_TEST := 123;

6. 用for in 使用cursor

  1. ? IS
  2. ? CURSOR cur IS SELECT * FROM xxx;
  3. ? BEGIN
  4. ? FOR cur_result in cur LOOP
  5. ? BEGIN
  6. ? V_SUM :=cur_result.列名 1+cur_result.列名2
  7. ? END;
  8. ? END LOOP;
  9. ? END;

7. 带参数的cursor

  1. ? CURSOR C_USER(C_ID NUMBER) IS SELECT NAME FROM USER WHERE TYPEID=C_ID;
  2. ? OPEN C_USER(变量值);
  3. ? LOOP
  4. ? FETCH C_USER INTO V_NAME;
  5. ? EXIT FETCH C_USER%NOTFOUND;
  6. ? do something
  7. ? END LOOP;
  8. ? CLOSE C_USER;

8. 用pl/sql developer debug

(编辑:ASP站长网)

网友评论
推荐文章
    热点阅读