shwq.net
当前位置:首页 >> OrAClE新建存储过程中把WHEN OTHERS THEN中的OTHER... >>

OrAClE新建存储过程中把WHEN OTHERS THEN中的OTHER...

可以先定义个变量,发生异常的时候将异常信息赋值给变量,插入表的时候用变量, 日志表没给表结构,我自己重新定义了一个,测试ok。 CREATE TABLE T_LOG_ERROR (ERR_ID NUMBER, ERR_TIME DATE, ERR_CODE NUMBER, ERR_INFOR VARCHAR2(4000) ); cr...

你说的是procedure或者function中的select 列 into 变量 from 。。。这种结构吧。 这就是plsql的语法规则。不难理解,你在程序中从一张表中获取了某列或某些列的值,要想使用肯定要赋值给变量的,那么select 。。into 就是为了赋值而定义的一种...

序列主要是用来生成固定的编号的,如:每次递增一即可。 create sequence SEQ_ID minvalue 1 maxvalue 99999999 start with 1 increment by 1 cache 30 cycle; 之后执行: insert into tab (auto_id) values (SEQ_ID.Nextval); 备注:sequence ...

给你示例你参考下: ----------------------------建立存储过程: CREATE OR REPLACE PROCEDURE P_name--存储过程名字 ( i_var in int, --输入参数1 o_var OUT varchar2 --输出参数1 ) IS v_STR VARCHAR2(200); --定义存储过程内部的局部变量 BEG...

定义一个块,块中说明异常情况下如何处理就可以了。 begin select 字段 into 变量... exception when NO_DATA_FOUND then --未找到时 处理逻辑 when exception_code then --这里的错误代码可以在standard包中找到 处理逻辑 when OTHERS then --d...

用动态SQL。 CREATE OR REPLACE PROCEDURE TEST(I_TABLE IN VARCHAR2)ISBEGIN DECLARE STRSQL VARCHAR2(4000); P_VALUE VARCHAR2(4000); BEGIN STRSQL := 'SELECT COL FROM ' || I_TABLE ; --COL为字段名,保证能且只返回一行 EXECUTE IMMEDIATE...

一、 if()then if()then end if; end if; 二、 if()then elsif()then end if;

NULL 当没有数据时,抛出空值 RAISE 是用来抛出异常的,没带参数的如你上面的这种,就是将当前的异常传到外部程序。

之前我保存的经典的方法,你可以参考下 首先创建一张表t_al_test_sy 字段分别为:pid,str_id,str_dm,str_mc; 存储过程如下: create or replace procedure p_al_output as str_id varchar(60); str_dm varchar(60); str_mc varchar(800); str_s...

一楼的回答不一定是提问者要的吧. 第一帖试着回答,不知掉百度问答好玩不好玩.. 有几种方法可以做,一种是1楼回答的,建user,授权,然后imp/exp 针对于对你的问题的理解这是我的方法: 假设想从user A 移表C到user B. 此处楼主没有说清楚,是同...

网站首页 | 网站地图
All rights reserved Powered by www.shwq.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com