1.创建错误日志表: create table REP_LOGS ( log_s_no NUMBER not null, log_date DATE default sysdate not null, log_type ) default 'E' not null, log_node ) not null, log_mesg ) not null ); -- Add comments to the table comment on table REP_LOGS is '系统操作日志信息表'; -
set serveroutput on DECLARE ; pename emp.ename%type; --自定义异常 no_emp_found exception; begin open cemp; fetch cemp into pename; if cemp%notfound then raise no_emp_found; end if; close cemp; exception when no_emp_found then dbms_output.put_line('自定义异常')
注意:普通的查询语句不会出现异常,只有使用into对变量进行赋值的时候才会发生异常 --系统变量: notfound --> if sql%notfund then 如果这个表达式为真,则 (增删改)出错 --,先自定义一个异常:no_result exception -- if sql%nofund then --excetpion --when no_result then --dbms…… 用户自定义异常写在:declare里,如: set serveroutput on declare
在这里讲一下包的概念, 二话不说上个例子 包头: create or replace package pck_test is procedure proc_report_salary(name nvarchar2,v_class_name out nvarchar2); function func_report_salary(v_month nvarchar2, v_year nvarchar2) return number; end pck_test; 包体: create or replac
Oracle常用语句语法汇总 Oracle10g 1 第一章Oracle命令 a) 系统管理员连接 conn */* as sysdba b) 查询当前用户 show user c) 创建新用户 create user 用户名 identified by 密码(密码不能以数字开头).例如create user abc identified by cba d) 用户登录 conn 用户名/密码.例如conn abc/cba e) 用户授权 grant 权限 to 用户.例如grant connec
-- 1. 使用一个变量 declare -- Local variables here v_name ); begin -- Test statements here select t.user_name into v_name from pay_mer_order t ; dbms_output.put_line(v_name); end; -- 2. 使用多个变量 declare -- Local variables here v_name ); v_trans_no ); v_app_c
Oracle 存储过程异常处理 1.异常的优点 如果没有异常,在程序中,应当检查每个命令的成功还是失败,如 BEGIN SELECT ... -- check for ’no data found’ error SELECT ... -- check for ’no data found’ error SELECT ... -- check for ’no data found’ error 这种实现的方法缺点在于错误处理没有与正常处理分开,可读性差,使用异常,可以方便处理