请各路大侠多多帮忙,200分求救: ORACLE 8.1.7(中文)中,如何将存储过程加密? (200分)

  • 主题发起人 主题发起人 Walone
  • 开始时间 开始时间
W

Walone

Unregistered / Unconfirmed
GUEST, unregistred user!
我在technet.oracle.com中查到些帮助,说是用Wrap Utility,还给了例子,如下
http://technet.oracle.com/doc/oracle8i_816/appdev.816/a77069/c_wrap.htm
To run the Wrap Utility, enter the wrap command at your operating
system prompt using the following syntax:
wrap iname=input_file [oname=output_file]

然后,我就在自己机器上试,产生错误如下:
C:/>wrap iname=sd.sql
kgepop: no error frame to pop to for error 1801

然后,我又查到了 1801错误:
http://technet.oracle.com/doc/reports20/ormcmb/ch4.htm
REP-1801 Unknown file type for a 'Read from File' field.
Cause: You attempted to create a file column, but the file type you
entered is invalid.
Action: Display the list of values and pick a valid file type.

请问各位大侠,问题出在哪里?
oralce中明明是可以将存储过程加密的呀,它自带的好多都加了密,该怎么操作?
 
我也想知道
 
5555555555555,怎么没有人理我呀
 
//你试试,
我有一个存储过程在pl/sql下面执行是成功的,我用wrap加密是总是报如下
的错误,我然后执行plb文件,存储过程也能生成成功,只是我我的原代码一
模一样。
PSU(103,1,1,23):Encountered the symbol "" when expecting one of
the following:

begin function package pragma procedure subtype type use
<an identifier> <a double-quoted delimited-identifier> cursor
form current external language

PL/SQL Wrapper error: Compilation error(s) for:
create or replace procedure proc_test
Outputting source and continuing.

发起人 zhangcg:
使用wrap有一个bug,需设置nls_lang才能使用

 
wrap iname=input_file [oname=output_file]
^^^^^
导入到ORACLE里面的存储过程的名称。。。[:)]
 
to hbezwwl
这篇我在网上也搜到过,但不知道什么意思!
to cjf
能不能说得仔细些?最好给个例子,谢谢
 
就是 注册表 HKEY_LOCAL_MACHINE/software/oracle 里面的 NLS_LANG 值
中文的话可以设置为 SIMPLIFIED CHINESE_CHINA.ZHS16GBK
 
是zhs16cgb231280
 
SQL Server的procedure看到有人加密
用了快一年的Oracle不知道procedure如何加密,关注
 
就是上面说的wrap加密
 
The input file can contain any combination of SQL statements. However, the Wrap Utility encrypts only the following CREATE statements, which define subprograms, packages, or object types:

CREATE [OR REPLACE] FUNCTION function_name
CREATE [OR REPLACE] PROCEDURE procedure_name
CREATE [OR REPLACE] PACKAGE package_name
CREATE [OR REPLACE] PACKAGE BODY package_name
CREATE [OR REPLACE] TYPE type_name ... OBJECT
CREATE [OR REPLACE] TYPE BODY type_name


All other SQL statements are passed intact to the output file.
 
在CREATE PROCEDUER 中使用选项:ENCRYPTION 就可以防止他人查看或修改了
 
oracle有这选项吗?没有吧
 
to Pipi.
注册表我改过了,错误还是一样。
to CJF
>wrap iname=input_file [oname=output_file]
> ^^^^^
>导入到ORACLE里面的存储过程的名称。。。
不会吧,我看到的所有资料都没有讲到这一点呀?况且我试了也不成
 
你的sql文件是不是还有其他东西啊,贴出来看看?
 
wrap工具只对包含下列语句的文件进行加密,否则原文输出。
CREATE [OR REPLACE] FUNCTION function_name
CREATE [OR REPLACE] PROCEDURE procedure_name
CREATE [OR REPLACE] PACKAGE package_name
CREATE [OR REPLACE] PACKAGE BODY package_name
CREATE [OR REPLACE] TYPE type_name ... OBJECT
CREATE [OR REPLACE] TYPE BODY type_name
我试过,没有任何问题。检查一下你的sql scripts中是否上述符合条件!!!
 
你搞定没有,
 
这是我从oracle帮助上切下来的包,用wrap,错误一样。
我的系统是 w2k advanced server 正版 + oracle8.1.7(从oracle下的)
不知问题出在何处?一会我再到别人的机器上试试
难道就没有哪位和我碰到过一样的错误?

CREATE PACKAGE
-- Author: J. Hollings
-- Date: 10/15/99
banking AS
minimum_balance CONSTANT REAL := 25.00;
insufficient_funds EXCEPTION;
END banking;
 
后退
顶部