[Java lista] Oracle ARRAY + JDBC
CoL
col at gear.hu
2009. Dec. 16., Sze, 12:07:37 CET
Szia,
próbálj meg egy űres string-et tartalamzó tömböt átadni.
C.
Godán Tamás wrote:
> Sziasztok!
>
> Bea Weblogic 8.1-ben futó alkalmazásban szeretnék Oracle PL/SQL
> függvénynek tömb típusú paramétert átadni. Működik is szépen, egyetlen
> bajom hogy NULL értéket sehogyan sem tudok átadni a bemenő paraméternek.
>
> DBkód:
>
> create or replace type ARRAY_CHAR100 as table of varchar2(100);
>
>
> function collect(
> I_TransStatusList IN ARRAY_CHAR100,
> ) return number is
> ...
>
>
> Java kód:
>
> java.util.List lista = ...; // Stringekből álló List
> Connection oraConn = ((weblogic.jdbc.wrapper.JTAConnection)
> connection).getVendorConnection();
> ArrayDescriptor arrayDescriptor =
> ArrayDescriptor.createDescriptor("ARRAY_CHAR100", oraConn);
> ARRAY paramArray = new ARRAY(arrayDescriptor, oraConn, lista.toArray());
> statement.setArray(parameterIndex, paramArray);
>
>
> Namármost, 3 féle képpen próbáltam a lista == NULL érték esetet
> lekezelni, 3 féle különböző hibát kaptam:
>
> 1. statement.setNull(parameterIndex, Types.ARRAY, "ARRAY_CHAR100");
> (ez az aminek szerintem működnie kellene!)
> Ez esetben a statement execute hívásakor száll el
> java.sql.SQLException: ORA-06531: Reference to uninitialized
> collection hibával.
>
> 2. A lista.toArray() helyett NULL átadása az ARRAY() konstruktor hívásakor
> Ez esetben a statement execute hívása ezt adja:
> java.sql.SQLException: ORA-06502: PL/SQL: numeric or value error
>
> 3. statement.setArray() hívásban egyszerűen NULL-t adok át a
> paramArray helyett
> Ekkor java.sql.SQLException: Invalid argument(s) in call
>
>
> Van valakinek tapasztalata/ötlete ezzel kapcsolatban?
>
>
> üdv,
> Tamás
>
>
>
> ________________________________________________________
> Most 10 000 Ft-ért beszámítjuk régi mobilod, ha újat veszel számlás
> előfizetéssel! Részletek: www.pannon.hu
> <http://ad.adverticum.net/b/cl,1,6022,370758,458130/click.prm>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Javalist mailing list
> Javalist at javagrund.hu
> http://javagrund.hu/mailman/listinfo/javalist
>
További információk a(z) Javalist levelezőlistáról