oracle 存儲過程加密的方法
更新時間:2008年12月02日 15:10:24 作者:
oracle 存儲過程的加密方法小結(jié)
配置環(huán)境:
1、數(shù) 據(jù) 庫:Oracle 8i R2 (8.1.7) for NT 企業(yè)版
2、安裝路徑:C:ORACLE
實現(xiàn)方法:
1.D:>set NLS_LANG=AMERICAN_AMERICA.USACII7
或
D:>set NLS_LANG=AMERICAN_AMERICA.WE8ISO8859P1
D:>set
直接打set命令可以查看環(huán)境變量
2.在D:下創(chuàng)建a.sql文件,內(nèi)容如下:
Java代碼
create or replace procedure test1(i in number) as
begin
dbms_output.put_line('輸入?yún)?shù)是'||to_char(i));
end;
create or replace procedure test1(i in number) as
begin
dbms_output.put_line('輸入?yún)?shù)是'||to_char(i));
end;
3.D:>wrap iname=a.sql
PL/SQL Wrapper: Release 8.1.7.0.0 - Production on Tue Nov 27 22:26:48 2001
Copyright (c) Oracle Corporation 1993, 2000. All Rights Reserved.
Processing a.sql to a.plb
4.打開a.plb,現(xiàn)在它的內(nèi)容如下:
Java代碼
create or replace procedure test1 wrapped
0
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
3
7
8106000
1
4
0
8
2 :e:
1TEST1:
1I:
1NUMBER:
1DBMS_OUTPUT:
1PUT_LINE:
1輸入?yún)?shù)是:
1||:
1TO_CHAR:
0
0
0
1f
2
0 1d 9a 8f a0 b0 3d b4
55 6a :2 a0 6b 6e 7e :2 a0 a5
b b4 2e a5 57 b7 a4 b1
11 68 4f 17 b5
1f
2
0 3 4 1d 19 18 25 15
2a 2e 32 36 3a 3d 42 45
49 4d 4e 50 51 56 57 5c
5e 62 64 70 74 76 7f
1f
2
0 1 b 11 16 :2 11 10 :3 1
:2 d 16 22 24 2c :2 24 :2 16 :a 1
1f
2
0 :9 1 :d 3 :2 2 :3 1 4 :2 1
81
4
:4 0 1 :a 0 1b
1 :4 0 5 :2 0
:2 3 :3 0 2 :7 0
5 4 :3 0 7
:2 0 1b 2 8
:2 0 4 :3 0 5
:3 0 a b 0
6 :4 0 7 :2 0
8 :3 0 2 :3 0
7 f 11 9
e 13 :3 0 :2 c
15 :2 0 17 10
1a :3 0 1a 0
1a 19 17 18
:6 0 1b :2 0 2
8 1a 1d :2 0
1 1b 1e :8 0
13
4
:3 0 1 3 1
6 1 10 2
d 12 1 14
1 16 2 16
1c
1
4
0
1d
0
1
14
1
2
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0
2 0 1
3 1 0
0
create or replace procedure test1 wrapped
0
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
3
7
8106000
1
4
0
8
2 :e:
1TEST1:
1I:
1NUMBER:
1DBMS_OUTPUT:
1PUT_LINE:
1輸入?yún)?shù)是:
1||:
1TO_CHAR:
0
0
0
1f
2
0 1d 9a 8f a0 b0 3d b4
55 6a :2 a0 6b 6e 7e :2 a0 a5
b b4 2e a5 57 b7 a4 b1
11 68 4f 17 b5
1f
2
0 3 4 1d 19 18 25 15
2a 2e 32 36 3a 3d 42 45
49 4d 4e 50 51 56 57 5c
5e 62 64 70 74 76 7f
1f
2
0 1 b 11 16 :2 11 10 :3 1
:2 d 16 22 24 2c :2 24 :2 16 :a 1
1f
2
0 :9 1 :d 3 :2 2 :3 1 4 :2 1
81
4
:4 0 1 :a 0 1b
1 :4 0 5 :2 0
:2 3 :3 0 2 :7 0
5 4 :3 0 7
:2 0 1b 2 8
:2 0 4 :3 0 5
:3 0 a b 0
6 :4 0 7 :2 0
8 :3 0 2 :3 0
7 f 11 9
e 13 :3 0 :2 c
15 :2 0 17 10
1a :3 0 1a 0
1a 19 17 18
:6 0 1b :2 0 2
8 1a 1d :2 0
1 1b 1e :8 0
13
4
:3 0 1 3 1
6 1 10 2
d 12 1 14
1 16 2 16
1c
1
4
0
1d
0
1
14
1
2
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0
2 0 1
3 1 0
0
5.運行a.plb
Java代碼
SQL> @d:a.plb
SQL> @d:a.plb
過程已創(chuàng)建。
6、運行存儲過程
Java代碼
SQL> set serveroutput on
SQL> execute test1(1);
SQL> set serveroutput on
SQL> execute test1(1);
輸入?yún)?shù)是1
PL/SQL 過程已成功完成。
7、查看存儲過程的代碼
Java代碼
SQL> select name,text from all_source where type='PROCEDURE' and name='TEST1';
SQL> select name,text from all_source where type='PROCEDURE' and name='TEST1';
結(jié)果:看不到其源碼
1、數(shù) 據(jù) 庫:Oracle 8i R2 (8.1.7) for NT 企業(yè)版
2、安裝路徑:C:ORACLE
實現(xiàn)方法:
1.D:>set NLS_LANG=AMERICAN_AMERICA.USACII7
或
D:>set NLS_LANG=AMERICAN_AMERICA.WE8ISO8859P1
D:>set
直接打set命令可以查看環(huán)境變量
2.在D:下創(chuàng)建a.sql文件,內(nèi)容如下:
Java代碼
create or replace procedure test1(i in number) as
begin
dbms_output.put_line('輸入?yún)?shù)是'||to_char(i));
end;
create or replace procedure test1(i in number) as
begin
dbms_output.put_line('輸入?yún)?shù)是'||to_char(i));
end;
3.D:>wrap iname=a.sql
PL/SQL Wrapper: Release 8.1.7.0.0 - Production on Tue Nov 27 22:26:48 2001
Copyright (c) Oracle Corporation 1993, 2000. All Rights Reserved.
Processing a.sql to a.plb
4.打開a.plb,現(xiàn)在它的內(nèi)容如下:
Java代碼
create or replace procedure test1 wrapped
0
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
3
7
8106000
1
4
0
8
2 :e:
1TEST1:
1I:
1NUMBER:
1DBMS_OUTPUT:
1PUT_LINE:
1輸入?yún)?shù)是:
1||:
1TO_CHAR:
0
0
0
1f
2
0 1d 9a 8f a0 b0 3d b4
55 6a :2 a0 6b 6e 7e :2 a0 a5
b b4 2e a5 57 b7 a4 b1
11 68 4f 17 b5
1f
2
0 3 4 1d 19 18 25 15
2a 2e 32 36 3a 3d 42 45
49 4d 4e 50 51 56 57 5c
5e 62 64 70 74 76 7f
1f
2
0 1 b 11 16 :2 11 10 :3 1
:2 d 16 22 24 2c :2 24 :2 16 :a 1
1f
2
0 :9 1 :d 3 :2 2 :3 1 4 :2 1
81
4
:4 0 1 :a 0 1b
1 :4 0 5 :2 0
:2 3 :3 0 2 :7 0
5 4 :3 0 7
:2 0 1b 2 8
:2 0 4 :3 0 5
:3 0 a b 0
6 :4 0 7 :2 0
8 :3 0 2 :3 0
7 f 11 9
e 13 :3 0 :2 c
15 :2 0 17 10
1a :3 0 1a 0
1a 19 17 18
:6 0 1b :2 0 2
8 1a 1d :2 0
1 1b 1e :8 0
13
4
:3 0 1 3 1
6 1 10 2
d 12 1 14
1 16 2 16
1c
1
4
0
1d
0
1
14
1
2
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0
2 0 1
3 1 0
0
create or replace procedure test1 wrapped
0
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
3
7
8106000
1
4
0
8
2 :e:
1TEST1:
1I:
1NUMBER:
1DBMS_OUTPUT:
1PUT_LINE:
1輸入?yún)?shù)是:
1||:
1TO_CHAR:
0
0
0
1f
2
0 1d 9a 8f a0 b0 3d b4
55 6a :2 a0 6b 6e 7e :2 a0 a5
b b4 2e a5 57 b7 a4 b1
11 68 4f 17 b5
1f
2
0 3 4 1d 19 18 25 15
2a 2e 32 36 3a 3d 42 45
49 4d 4e 50 51 56 57 5c
5e 62 64 70 74 76 7f
1f
2
0 1 b 11 16 :2 11 10 :3 1
:2 d 16 22 24 2c :2 24 :2 16 :a 1
1f
2
0 :9 1 :d 3 :2 2 :3 1 4 :2 1
81
4
:4 0 1 :a 0 1b
1 :4 0 5 :2 0
:2 3 :3 0 2 :7 0
5 4 :3 0 7
:2 0 1b 2 8
:2 0 4 :3 0 5
:3 0 a b 0
6 :4 0 7 :2 0
8 :3 0 2 :3 0
7 f 11 9
e 13 :3 0 :2 c
15 :2 0 17 10
1a :3 0 1a 0
1a 19 17 18
:6 0 1b :2 0 2
8 1a 1d :2 0
1 1b 1e :8 0
13
4
:3 0 1 3 1
6 1 10 2
d 12 1 14
1 16 2 16
1c
1
4
0
1d
0
1
14
1
2
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0
2 0 1
3 1 0
0
5.運行a.plb
Java代碼
SQL> @d:a.plb
SQL> @d:a.plb
過程已創(chuàng)建。
6、運行存儲過程
Java代碼
SQL> set serveroutput on
SQL> execute test1(1);
SQL> set serveroutput on
SQL> execute test1(1);
輸入?yún)?shù)是1
PL/SQL 過程已成功完成。
7、查看存儲過程的代碼
Java代碼
SQL> select name,text from all_source where type='PROCEDURE' and name='TEST1';
SQL> select name,text from all_source where type='PROCEDURE' and name='TEST1';
結(jié)果:看不到其源碼
相關文章
使用PL/SQL Developer連接Oracle數(shù)據(jù)庫的方法圖解
之前因為項目的原因需要使用Oracle數(shù)據(jù)庫,由于時間有限沒辦法從基礎開始學習,而且oracle操作的命令界面又太不友好,于是就找到了PL/SQL Developer這個很好用的軟件來間接使用數(shù)據(jù)庫,下面簡單介紹一下如何用這個軟件連接Oracle數(shù)據(jù)庫2016-12-12通過 plsql 連接遠程 Oracle數(shù)據(jù)庫的多種方法
這篇文章主要介紹了通過 plsql 連接遠程 Oracle的方法,通過plsql 工具和 oracle client(不是即時客戶端 instantclient) 的方式來連接 Oracle,這是方法之一,還有其中一種方法感興趣的朋友跟隨小編一起看看吧2021-08-08oracle中的greatest 函數(shù)和 least函數(shù)示例代碼
這篇文章主要介紹了oracle中的greatest 函數(shù)和 least函數(shù)的實例代碼,非常不錯,具有一定的參考借鑒價值 ,需要的朋友可以參考下2018-11-11