1

出力パラメータとして OracleTypes.ARRAY を返すストアド プロシージャを呼び出しているときに、Groovy SQL に問題があります。

Java コード (正常に動作):

callableStatement.registerOutParameter(37, OracleTypes.ARRAY, DEVICE_RAW_DATA_ARRAY);

OracleTypes.ARRAY registerOutParameter は JDBC(callableStatement) で構成され、正常に動作していました。Groovy SQL から同じストアド プロシージャを呼び出すと、「java.sql.SQLException: ORA-03115: サポートされていないネットワーク データ型または表現」という例外が発生します。

グルーヴィーなコード:

import groovy.sql.Sql

def sqlStr = "{call prometheus.PKG_Device_FP_TLDID.SP_Save_Device_FP_Get_TLDID(?,?,?,?,?,?)}"

def params = [  ID_IN,
        Request_ID_IN,  
        Session_ID_IN,      
        Sql.NUMERIC, 
            Sql.VARCHAR, 
            Sql.ARRAY   // ARRAY Type output parameter -- Here I am getting Exception "java.sql.SQLException: ORA-03115: unsupported network datatype or representation" //

]

Sql.ARRAY // OracleTypes.ARRAY // Sql.OracleTypes.ARRAY およびその他のタイプのようなさまざまなデータ型を試しました。

Groovy SQL の OracleTypes.ARRAY に相当する DATA TYPE を教えてください。

ありがとうございました !!

4

0 に答える 0