oracle 数据库密码加密存储过程,加密oracle数据库存储过程或函数

这是一个关于如何使用SQL代码加密存储过程或函数的示例。提供了两种方法,一个为存储过程`proc_encrypt_procOrFun`,另一个为函数`fun_encrypt_procOrFun`,它们都通过遍历`USER_SOURCES`表获取指定对象的文本,然后利用`DBMS_DDL.WRAP`进行加密。加密后的结果存储在输出参数中,可用于后续的加密操作。
摘要由CSDN通过智能技术生成

1.[代码][SQL]代码

create or replace procedure proc_encrypt_procOrFun(obj_name in varchar2, out_text out varchar2) as

--=====================================================

--功能:加密存储过程或函数

--参数:obj_name 要加密的过程或函数

-- out_text 加密后的密文

--=====================================================

v_text varchar2(32767) default 'create or replace ';

begin

for c in (select text from user_source t where name=upper(obj_name)) loop

v_text := v_text||c.text;

end loop;

v_text := dbms_ddl.wrap(v_text);

out_text := v_text;

--execute immediate v_text;

--dbms_output.put_line(v_text);

exception

when others then

dbms_output.put_line(sqlerrm);

end proc_encrypt_procOrFun;

create or replace function fun_encrypt_procOrFun(obj_name varchar2)

return varchar2 as

--=====================================================

--功能:加密存储过程或函数

--参数:obj_name 要加密的过程或函数

--=====================================================

v_text varchar2(32767) default 'create or replace ';

begin

for c in (select text from user_source t where name=upper(obj_name)) loop

v_text := v_text||c.text;

end loop;

v_text := dbms_ddl.wrap(v_text);

--execute immediate v_text;

--dbms_output.put_line(v_text);

return (v_text);

exception

when others then

dbms_output.put_line(sqlerrm);

return (sqlerrm);

end fun_encrypt_procOrFun;

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值