Skip to Main Content

SQL & PL/SQL

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

ORA-01460 >4000 chars problem

661321Sep 25 2008 — edited Sep 26 2008
Hello,

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!)
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Oct 24 2008
Added on Sep 25 2008
4 comments
1,481 views