代码提示已编译但有异常
代码提示已编译但有错误
上面这个方法编译出错,错误如题,之前的方法
能编译成功并且能使用,我只是改了一部分 怎么编译不了,求解
------解决方案--------------------
1. l_key := mkey后面缺分号。
2. end DES_test1;应该是DES_test3
另外创建的函名为什么要加双引号啊,直接创建多好啊。
------解决方案--------------------
嗯,也可以省去l_key,直接将传入参数给过程调用,des_test1、des_test3也可省略。
CREATE OR REPLACE FUNCTION "DES_test3"(str in varchar2,mkey in varchar2) return varchar2
deterministic IS
l_data varchar2(255);
l_data2 varchar2(255);
l_key varchar2(100);
begin
l_key := mkey
l_data := rpad(str, (trunc(length(str) / 8) + 1) * 8, chr(0));
dbms_obfuscation_toolkit.DESEncrypt(input_string => l_data,
key_string => l_key,
encrypted_string => l_data2);
return l_data2;
end DES_test1;
上面这个方法编译出错,错误如题,之前的方法
CREATE OR REPLACE FUNCTION "DES2"(str in varchar2) return varchar2
deterministic IS
l_data varchar2(255);
l_data2 varchar2(255);
begin
l_data := rpad(str, (trunc(length(str) / 8) + 1) * 8, chr(0));
dbms_obfuscation_toolkit.DESEncrypt(input_string => l_data,
key_string => 'MagicKey',
encrypted_string => l_data2);
return l_data2;
end DES2;
能编译成功并且能使用,我只是改了一部分 怎么编译不了,求解
------解决方案--------------------
1. l_key := mkey后面缺分号。
2. end DES_test1;应该是DES_test3
另外创建的函名为什么要加双引号啊,直接创建多好啊。
------解决方案--------------------
嗯,也可以省去l_key,直接将传入参数给过程调用,des_test1、des_test3也可省略。