The code generated for BLOB output arguments and return values is incorrect and doesn't compile.
The generated test code has the following compilation errors:
PL/SQL: Statement ignored
PLS-00306: wrong number or types of arguments in call to 'SUBSTR'
PL/SQL: Statement ignored
PLS-00306: wrong number or types of arguments in call to 'SUBSTR'
PL/SQL: Statement ignored
PLS-00306: wrong number or types of arguments in call to '='
To replicate the problem, please create a test for the following package:
=====================================================
create or replace package test_blob is
function test_blob(t in blob, s out blob) return blob;
end test_blob;
/
grant execute on test_blob to qcto;
create or replace package body test_blob is
function test_blob(t in blob, s out blob) return blob is
l integer;
begin
dbms_lob.createtemporary(s, true, dbms_lob.call);
l := dbms_lob.getlength(t);
dbms_lob.copy(s, t, l);
for i in 1 .. l loop
dbms_lob.write(s, 1, i, dbms_lob.substr(t, 1, l - i + 1));
end loop;
return null;
end test_blob;
begin
null;
end test_blob;
/
=====================================================
You need to be signed in and under a current maintenance contract to view premium knowledge articles.
© 2024 Quest Software Inc. ALL RIGHTS RESERVED. Feedback Terms of Use Privacy Cookie Preference Center