Zareca. 2015-12-21 11:26 采纳率: 0%
浏览 1400

java调用存储函数,有些数据可以执行成功,有些却报异常是什么原因?

图片说明
/**
* 获取书籍总点击量
*
* @param bookid 书籍id
* @return 书籍总点击量
* @throws Exception
*/
@Override
public int getClickAllById(int bookid) throws Exception {

    ResultSet rs = null;
    DataParameter[] parameters = new DataParameter[] { 
            adoHelper.getReturnParameter(),
            adoHelper.getParameter("inintbookid", bookid, DataType.INTEGER),
            adoHelper.getOutputParameter("outcurlist", DataType.CURSOR) };

    rs = adoHelper.executeReader(Config.getConfig("bookconnectionstring"), "FN_GETBOOKALLINFOBYID",
            parameters);

    int clickAll = 0;
    if (rs.next()) {
        clickAll = rs.getInt("CLICKRATE_ALL");
    }


    return clickAll;
}


    调用这个存储函数,传入的bookid有些可以执行成功,有些却报异常。异常信息是:
    2015/12/21 16:43:28 | INFO  - MLog                       - MLog clients using log4j logging.

INFO | jvm 1 | 2015/12/21 16:43:28 | INFO - C3P0Registry - Initializing c3p0-0.9.1.2 [built 21-May-2007 15:04:56; debug? true; trace: 10]
INFO | jvm 1 | 2015/12/21 16:43:28 | INFO - stractPoolBackedDataSource - Initializing c3p0 pool... com.mchange.v2.c3p0.ComboPooledDataSource [ acquireIncrement -> 3, acquireRetryAttempts -> 30, acquireRetryDelay -> 1000, autoCommitOnClose -> false, automaticTestTable -> null, breakAfterAcquireFailure -> true, checkoutTimeout -> 0, connectionCustomizerClassName -> null, connectionTesterClassName -> com.mchange.v2.c3p0.impl.DefaultConnectionTester, dataSourceName -> z8kflt9d1iavakf20c46j|141dddba, debugUnreturnedConnectionStackTraces -> false, description -> null, driverClass -> oracle.jdbc.driver.OracleDriver, factoryClassLocation -> null, forceIgnoreUnresolvedTransactions -> false, identityToken -> z8kflt9d1iavakf20c46j|141dddba, idleConnectionTestPeriod -> 60, initialPoolSize -> 3, jdbcUrl -> jdbc:oracle:thin:@orabooksyncdb.qdintra.com:1521:cmfu162, maxAdministrativeTaskTime -> 0, maxConnectionAge -> 0, maxIdleTime -> 60, maxIdleTimeExcessConnections -> 0, maxPoolSize -> 5, maxStatements -> 0, maxStatementsPerConnection -> 0, minPoolSize -> 1, numHelperThreads -> 3, numThreadsAwaitingCheckoutDefaultUser -> 0, preferredTestQuery -> null, properties -> {user=******, password=******}, propertyCycle -> 0, testConnectionOnCheckin -> false, testConnectionOnCheckout -> false, unreturnedConnectionTimeout -> 0, usesTraditionalReflectiveProxies -> false ]
INFO | jvm 1 | 2015/12/21 16:43:29 | ERROR - Log4j - 获取书籍总点击量失败_bookID:3,173,393,ex:java.sql.SQLException: 调用存储过程[connection:oracle1,procedureName:FN_GETBOOKALLINFOBYID,database:jdbc:oracle:thin:@oracoredb2.qdintra.com:1521:cmfu]出现异常,ex:java.sql.SQLException: ORA-06550: line 1, column 13:
INFO | jvm 1 | 2015/12/21 16:43:29 | PLS-00201: identifier 'FN_GETBOOKALLINFOBYID' must be declared
INFO | jvm 1 | 2015/12/21 16:43:29 | ORA-06550: line 1, column 7:
INFO | jvm 1 | 2015/12/21 16:43:29 | PL/SQL: Statement ignored
INFO | jvm 1 | 2015/12/21 16:43:29 | !

然后我这个做了定时任务,每15分钟执行一次这个程序,定时用的Timer。
数据库用的是Oracle

  • 写回答

2条回答 默认 最新

  • threenewbee 2015-12-21 11:51
    关注

    FN_GETBOOKALLINFOBYID
    数据库中有这个函数么?是不是拼写错了。

    评论

报告相同问题?

悬赏问题

  • ¥50 切换TabTip键盘的输入法
  • ¥15 可否在不同线程中调用封装数据库操作的类
  • ¥15 微带串馈天线阵列每个阵元宽度计算
  • ¥15 keil的map文件中Image component sizes各项意思
  • ¥20 求个正点原子stm32f407开发版的贪吃蛇游戏
  • ¥15 划分vlan后,链路不通了?
  • ¥20 求各位懂行的人,注册表能不能看到usb使用得具体信息,干了什么,传输了什么数据
  • ¥15 Vue3 大型图片数据拖动排序
  • ¥15 Centos / PETGEM
  • ¥15 划分vlan后不通了