sql >> Database teknologi >  >> RDS >> Oracle

Hvordan returnerer man midlertidig CLOB-instans fra gemt funktion i Pl/SQL?

I en kommentar sagde du:

Dokumentationen for getSubString anfører, at:

Med en simpel funktion til at generere og returnere en CLOB, kan jeg hente den over JDBC (ojdbc5 eller ojdbc6 ) uden problemer, enten med getCLOB() eller getString() . Men hvis jeg prøver at tildele Oracle.sql.CLOB hentet med getCLOB til en String ved hjælp af

String x = getSubString(0, clob.length());

så får jeg også Invalid argument(s) in call fejl. Bare ændre det til:

String x = getSubString(1, clob.length());

arbejder. Så det ser ikke ud til at have noget at gøre med den midlertidige allokering i funktionen eller CLOB-størrelsen. Jeg forstår ikke, hvorfor du ikke havde et problem med mindre CLOB'er - måske ramte din logik bare ikke dette, hvis de var små?

I mellemtiden har du arbejdet omkring dette med clob.getCharacterStream().read() , så det kan være lidt irrelevant nu.



  1. 12c Forældede funktioner

  2. Hvordan tilslutter man sig selv til en tabel på en måde, så hver post er forbundet med den forrige post?

  3. Er der nogen gode PostgreSQL-klienter til linux?

  4. MySQL/MariaDB:Opret en pivottabelvisning