gpt4 book ai didi

java - resultSet.getTimeStamp() 不起作用

转载 作者:行者123 更新时间:2023-12-02 00:42:36 27 4
gpt4 key购买 nike

我使用jdk-1.6, 操作系统-红帽5, driver-class12.jar,(jar 和 jdk lib) 数据库-Oracle 10g

对于 resultset.getTimestamp("CURRENT_TIMESTAMP") 它会抛出无效列类型异常

 public Timestamp getCurrentTimeStamp(Connection connection) throws SQLException {
Timestamp timeStamp = null;
try {
PreparedStatement ps = connection.prepareStatement("SELECT CURRENT_TIMESTAMP FROM DUAL");
ResultSet rs = ps.executeQuery();
if (rs.next()) {
timeStamp = rs.getTimestamp("CURRENT_TIMESTAMP");
}

} catch(Exception e){}
return timeStamp;
}

在某些系统中它工作正常,仅在服务器中它会抛出以下异常

java.sql.SQLException: Invalid column type
at oracle.jdbc.dbaccess.DBError.
throwSqlException(DBError.java:189)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:231)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:294)
at oracle.jdbc.driver.OracleStatement.getTimestampValue(OracleStatement.java:4627)
at oracle.jdbc.driver.OracleResultSetImpl.

任何人都可以帮助我......

最佳答案

您的 JDBC 驱动程序真的非常老(大约 10 年前)。

您应该尝试的第一件事是使用当前的驱动程序 (ojdbc6.jar)。

编辑:这是一个 discussion on the oracle forums - 这绝对是驱动程序版本 11.1.0.6.0 中修复的驱动程序错误

关于java - resultSet.getTimeStamp() 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5896546/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com