创建package样例

create or replace procedure package_procedure
AS
i_count integer;
begin
select count(*) into i_count from user_objects t where t.OBJECT_TYPE ='PACKAGE' and t.OBJECT_NAME = upper('package_name');
if i_count>0 then
EXECUTE IMMEDIATE 'drop package package_name';
end if;
end package_procedure;
/
call package_procedure();
drop procedure package_procedure;

CREATE OR REPLACE PACKAGE package_name IS

TYPE timearraytyp IS TABLE OF DATE;

PROCEDURE log_error_to_table(v_error_code IN NUMBER,
v_error_desc IN VARCHAR2,
v_sql IN VARCHAR2);

END package_name;
/

CREATE OR REPLACE PACKAGE BODY package_name IS
PROCEDURE log_error_to_table(v_error_code IN NUMBER,
v_error_desc IN VARCHAR2,
v_sql IN VARCHAR2) IS
v_error VARCHAR2(200);
v_error_text VARCHAR2(800);
v_record_sql VARCHAR2(2048);
BEGIN
v_error := 'Error code is:' || v_error_code;
v_error_text := substr(v_error_desc, 1, 500);
v_record_sql := substr(v_sql, 1, 2000);
INSERT INTO t_error_debug
VALUES
(SYSDATE, v_error, v_error_text, v_record_sql);
COMMIT;
END log_error_to_table;
END package_name;
/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值