oracle存储过程代码加密,windows中oracle存储过程加密的实例代码

本文详细介绍了在Windows环境下如何使用Oracle的wrap命令对存储过程进行加密,包括创建、导入和调用加密后的过程。同时,文章还提到了相关函数如instr和substr在存储过程中的应用,并提供了Python和C#调用Oracle存储过程的示例。最后,文章总结了存储过程的基本语法和使用场景。
摘要由CSDN通过智能技术生成

windows中oracle存储过程加密的实例代码

在硬盘中创建一个过程test.sql

create or replace procedure test_bf is

begin

dbms_output.put_line('test success');

end;

然后通过使用oracle自带的wrap命令对过程进行加密

先打开CMD然后输入命令

wrap iname='input_name' oname='output-name'

input_name是需要加密的文件的路径,output_name是输出的文件名,如果没有oname那么生成出来的加密文件就是源文件名.plb。

C:\>wrap iname=C:\test.sql oname=C:\test_pwd.sql

PL/SQL Wrapper: Release 11.2.0.1.0- 64bit Production on 星期六 1月 18 20:09:09

2020

Copyright (c) 1993, 2009, Oracle. All rights reserved.

Processing C:\test.sql to C:\test_pwd.sql

创建成功过程后就进入sql将过程导入然后调用

SQL> @C:test_pwd.sql

过程已创建。

SQL> execute hbk_secret;

PL/SQL 过程已成功完成。

SQL> set serveroutput on;

SQL> execute test_bf;

test success

PL/SQL 过程已成功完成。

在看一看过程的内容

select name,text from all_source where type='PROCEDURE' and name='test_bf'

f84392e441ce3e2833e6db49e72c7a93.png

过程已被加密,至此结束。

总结

以上所述是小编给大家介绍的windows中oracle存储过程加密的实现方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

时间: 2020-01-18

instr和substr存储过程,分析内部大对象的内容 instr函数 instr函数用于从指定的位置开始,从大型对象中查找第N个与模式匹配的字符串. 用于查找内部大对象中的字符串的instr函数语法如下: dbms_lob.instr( lob_loc in blob, pattern in raw, offset in integer := 1; nth in integer := 1) return integer; dbms_lob.instr( lob_loc in clob char

Oracle存储过程语法 Oracle的存储过程语法如下: create procedure 存储过程名称(随便取) is 在这里可以定义常量.变量.游标.复杂数据类型这里可以定义变量.常量 begin 执行部分 end; (2)带参数的存储过程语法: create procedure 存储过程名称(随便取) (变量1 数据类型,变量2 数据类型,...,变量n 数据类型) is 在这里可以定义常量.变量.游标.复杂数据类型这里可以定义变量.常量 begin 执行部分 end; (3)带输入.输

6b5aa0751a6f1e6a9d0b665a02cc1f46.gif

Oracle function里面是可以允许有DML语句的,但是不能在查询的时候使用. 我们常用的function如: select max(a) from table ; 这种调用方式是不能执行带有DML的FUNCTION的. 但是如果不用在SQL里面是可以有的 比如 dbms_output.put_line(func(...));   如果函数里面采用自治事务,是可以有DML 的. 什么是"自治事务": 自治事务是可以在其他事务中调用的独立事务. 自治事务可以使事务离开调用事务的上

软件环境: 1.操作系统:Windows 2000 Server 2.数 据 库:Oracle 8i R2 (8.1.7) for NT 企业版 3.安装路径:C:ORACLE 实现方法: 1. D:>set NLS_LANG=AMERICAN_AMERICA.USACII7 或 D:>set NLS_LANG=AMERICAN_AMERICA.WE8ISO8859P1 D:>set 直接打set命令可以查看环境变量 2. 在D:下创建a.sql文件,内容如下: create or re

select * from emp; -----------------存储过程------------------------ --定义 create[or replace] procedure 存储过程名称(参数名 [in]/out 数据类型)    is/as    begin --逻辑表达式  end [存储过程名称]; --定义存储过程计算年薪,并答应输出 create or replace procedure proc_salyears(v_no in number)    is

方法1: X:\oracle\ora81\bin\wrap   iname=XXX   oname=XXX 方法2:9i在win2000下使用wrap加密存储过程,10g可以用加密包dbms_ddl.wrap或dbms_ddl.create_wrapped. 11.5.1 在win2000下使用wrap加密存储过程 wrap.bat rem 使用方法:wrap 待加密的文件名 set NLS_LANG=AMERICAN_AMERICA.USACII7 wrap.exe iname=%1 paus

配置环境: 1.数 据 库:Oracle 8i R2 (8.1.7) for NT 企业版 2.安装路径:C:ORACLE 实现方法: 1.D:>set NLS_LANG=AMERICAN_AMERICA.USACII7 或 D:>set NLS_LANG=AMERICAN_AMERICA.WE8ISO8859P1 D:>set 直接打set命令可以查看环境变量 2.在D:下创建a.sql文件,内容如下: Java代码 create or replace procedure test1(

怎么利用MyBatis传List类型参数到数据库存储过程中实现批量插入数据? MyBatis中参数是List类型时怎么处理?大家都知道MyBatis批处理大量数据是很难做到事务回滚的(事务由Spring管理),都将逻辑写在存储中又是及其头疼的一件事(参数长度也有限制),那么我想的是将参数在后台封装为单个或多个list集合,直接通过MyBatis将此参数传到数据库存储过程中,一来摆脱了MyBatis批量插入数据的诸多限制(例如:不能实时返回主键.foreach标签循环集合长度有限制),二来就是在存

Oracle存储过程.包.方法使用总结,具体代码如示: /** *@author:zhengwei *@date:2017-04-28 *@desc:存储过程用法总结 */ CREATE OR REPLACE PROCEDURE MYPROCEDURE(P_ID IN VARCHAR, P_STATUS OUT VARCHAR) --P_ID为输入参数 ,P_STATUS为输出参数 AS ---变量声明 T_STATUS VARCHAR2(20); T_ID NUMBER; V_POSTYPE

1d6f0da649ab39cc26f92127208d392e.png

1:调用无参数的存储过程. 创建存储过程: Mapper.xml 配置:经测试其他标签(update.insert.select)也可以. Mapper.java MapperTest.java 测试 2:有参数的存储过程调用: 2.1存储过程的创建: 2.2Mapper.xml 的配置: 2.3Mapper.java 2.4MapperTest.java 测试 控制台输出: 3:存储过程的结果集调用. 3.1创建存储过程: 3.2 Mapper.xml 配置 配置 resultMap结果集字段

本文实例讲述了Python使用cx_Oracle调用Oracle存储过程的方法.分享给大家供大家参考,具体如下: 这里主要测试在Python中通过cx_Oracle调用PL/SQL. 首先,在数据库端创建简单的存储过程. create or replace procedure test_msg(i_user in varchar2, o_msg out varchar2) is begin o_msg := i_user ||', Good Morning!'; end; 然后,开始在Pytho

本文实例讲述了C#调用Oracle存储过程的方法.分享给大家供大家参考.具体实现方法如下: Oracle数据库代码如下: 复制代码 代码如下: create or replace procedure proce_test(paramin in varchar2,paramout out varchar2,paraminout in out varchar2) as   varparam varchar2(28); begin   varparam:=paramin;   paramout:=va

存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,存储在数据库中经过第一次编译后再次调用不需要再次编译,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它. 存储过程是数据库中的一个重要对象,任何一个设计良好的数据库应用程序都应该用到存储过程. 不多说了,本文通过两种方法介绍asp.net中调用oracle存储过程的方法,具体内容请看下面代码. 调用oracle存储过程方法一: ORACLE代码 CREATE OR REP

Oracle存储过程基本语法 存储过程 1 CREATE OR REPLACE PROCEDURE 存储过程名 2 IS 3 BEGIN 4 NULL; 5 END; 行1: CREATE OR REPLACE PROCEDURE 是一个SQL语句通知Oracle数据库去创建一个叫做skeleton存储过程, 如果存在就覆盖它; 行2: IS关键词表明后面将跟随一个PL/SQL体. 行3: BEGIN关键词表明PL/SQL体的开始. 行4: NULL PL/SQL语句表明什么事都不做,这句不能删

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值