ORA-01460 >4000 chars problem
661321Sep 25 2008 — edited Sep 26 2008Hello,
I hava a web application written with Oracle ADF in jDeveloper.
A View-Object contained the SQL-Statemant to search with a bind variable (Type: String) and uses Oracle Text.
...
WHERE contains(Index, :mySearchString, 1) > 0
...
Java generates the String (Type: String) that might have a length of 12 chars, 1234 chars or maybe something about 4000 chars.
If the String is below 4000 chars, there is no problem.
But if he exceeds the 4000 chars I get a exception with the message "ORA-01460: unimplemented or unreasonable conversion requested".
Now I know that VARCHAR2 could be max. 4000 chars and I can't enhance this! :-(
So I tried to solve the problem in PL/SQL becaus here the limit of VARCHAR2 is 32KB!?
I wrote a sql function:
create or replace function mysearch(p_arg varchar2)return sys_refcursor is
l_resultset sys_refcursor;
begin
open l_resultset for select ... from ... where contains(attribut, p_arg);
return l_resultset;
end;
and create a View-Object in jDeveloper. This View-Object has the follwing SQL-Statement:
SELECT mysearch(:p_arg) AS MY_SEARCH FROM DUAL
(This view has no attributes :-( !) And it seems that the Object which I get has only 1 row. It should contains about 9000.
And I get anyway the message "ORA-01460: unimplemented or unreasonable conversion requested".
Could someone help me?
I am at my wit's end.
DB: Oracle 10g Enterprise Edition (10.1.0.4.2)
JDBC Version: 10.1.0.5
(Please excuse my bad english!)