zoukankan      html  css  js  c++  java
  • PL/SQL编程基础

    CURSOR 游标

    游标属性:
    cur_tmp%found 至少影响到一行数据为true;
    cur_tmp%notfound 与%found相反
    cur_tmp%rowcount 返回受SQL语句影响的行数
    cur_tmp%isopen 游标打开时为true

     

    • 显示 cursor
    --显示cursor
    set serveroutput on
    declare
    cursor cur_emp(var_name in varchar2:='lili')
    is select cust_no,cust_name,address from t_cscustomer where cust_name like var_name||'%';
    type record_emp is record
    (
    var_empno t_cscustomer.cust_no%type,
    var_empname t_cscustomer.cust_name%type,
    var_empaddress t_cscustomer.address%type
    );
    emp_row record_emp;
    begin
     DBMS_OUTPUT.ENABLE(buffer_size => null);    --表示输出buffer不受限制
     open cur_emp('');
     fetch cur_emp into emp_row;
     while cur_emp%found loop
      dbms_output.put_line(emp_row.var_empname||'的编号是'||emp_row.var_empno||',地址是'||emp_row.var_empaddress);
      fetch cur_emp into emp_row;
     end loop;
     close cur_emp;
    end;
    /
    • for 中使用cursor 不用进行打开游标、读取游标、关闭游标 oracle内部自动完成
    declare
    cursor cur_emp 
    is 
    select cust_name var_ename,linkphone var_phone,address var_sal from t_cscustomer where address like '%招南%0402室%';
    begin
     DBMS_OUTPUT.ENABLE(buffer_size => null);    --表示输出buffer不受限制
     for empinfo in cur_emp loop
      dbms_output.put_line('雇员'||empinfo.var_ename||'的电话是'||empinfo.var_phone||'、地址是'||empinfo.var_sal);
     end loop;
    end;
    /

     

    • 自定义异常
    --自定义异常
    declare
    v_num number := 0;
    myexc exception; --定义一个异常变量 begin v_num := 1 + 1;
    raise myexc;
    exception when myexc then dbms_output.put_line('自定义异常');
    retrun;
    end; /
    • 存储过程、函数、触发器、包
  • 相关阅读:
    线段树快速查找区间值
    html学习笔记
    区块链是怎么运行的
    【C++ 流类库与输入输出 】实验七
    【C++ 实验六 继承与派生】
    10天冲刺第四天后端app开发
    10天冲刺第三天后端app开发
    10天冲刺第二天之完成后端
    第二次冲刺第一天之后台管理
    第一阶段--冲刺总结
  • 原文地址:https://www.cnblogs.com/bors/p/plsql.html
Copyright © 2011-2022 走看看