【问题标题】:Getting Exception java.sql.SQLException: ORA-03115: unsupported network datatype or representation获取异常 java.sql.SQLException: ORA-03115: 不支持的网络数据类型或表示
【发布时间】:2018-10-28 10:32:18
【问题描述】:

Java 程序:

CREATE OR REPLACE PACKAGE pkg_name is

    TYPE REF_CURSOR IS REF CURSOR; 

    PROCEDURE p_fetch_unprocessed_repair (
                IN_OUT_BULK_ID      IN OUT  NUMBER,
                IN_PUBLISH_STATUS   IN  CHAR,
                out_from_date       OUT VARCHAR2,
                out_to_date         OUT VARCHAR2,
                out_repair_info     OUT REF_CURSOR,
                out_error_cd        OUT VARCHAR2
        ) ;

    END;

调用存储过程的Java代码块。

try {
    CallableStatement callStatement= conn.prepareCall("{call PKG_NAME.p_fetch_unprocessed_repair(?,?,?,?,?,?)}");
    conn.setAutoCommit(false);
    callStatement.setFetchDirection(ResultSet.FETCH_FORWARD);
    callStatement.setFetchSize(props.getDbBatchSize());
    callStatement.registerOutParameter("IN_OUT_BULK_ID", Types.NUMERIC);
    if(null != bulkID && StringUtils.isNotBlank(bulkStatus)){
        callStatement.setInt("IN_OUT_BULK_ID", bulkID);
    }
    callStatement.setString("IN_PUBLISH_STATUS", bulkStatus);
    callStatement.registerOutParameter("OUT_FROM_DATE", Types.VARCHAR);
    callStatement.registerOutParameter("OUT_TO_DATE", Types.VARCHAR);
    callStatement.registerOutParameter("OUT_REPAIR_INFO", Types.REF);
    callStatement.registerOutParameter("OUT_ERROR_CD", Types.VARCHAR);
    Boolean hadResults = callStatement.execute();
} catch(exception e ) {

}

【问题讨论】:

    标签: java oracle jdbc plsql


    【解决方案1】:

    换行试试

                callStatement.registerOutParameter("OUT_REPAIR_INFO", Types.REF);
    

                callStatement.registerOutParameter("OUT_REPAIR_INFO", oracle.jdbc.OracleTypes.CURSOR);
    

    【讨论】:

    • 它解决了我的问题,但我没有得到任何结果集 eventhogh 我硬编码的输出变量。请帮助我。
    • 我不确定你的意思是“没有得到任何结果集”。你的意思是你的变量hadResults 最终是false?如果是这种情况,则忽略该值,而是尝试使用 ResultSet myResultSet = (ResultSet)callStatement.getObject("OUT_REPAIR_INFO"); 之类的行从可调用语句中读取结果集。
    猜你喜欢
    • 1970-01-01
    • 2019-08-19
    • 2015-04-19
    • 2021-03-03
    • 2021-11-11
    • 2013-01-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多