gpt4 book ai didi

java - JDBC - JTDS 错误?对于日期和时间类型的列 (x)

转载 作者:行者123 更新时间:2023-11-29 09:18:41 24 4
gpt4 key购买 nike

当我尝试从 ResultSetMetaData 获取列类型时 使用方法 getColumnTypeName 类型 datetime(x) ,我是得到 nvarchar。对于其他类型,它似乎工作正常。这是一个错误吗?使用 ResultSet getString("TYPE_NAME") 似乎没问题。我在 MSSQL2008

上运行

@a_horse_with_no_name

ResultSetMetaData 我在执行查询时得到。在那种情况下,我没有任何表格。这是代码片段

if (resultType == ResultMappingType.QUERY){ // For Query
Statement statement = con.createStatement();
ResultSet rs = executeAndValidateQuery(statement, resultName);
ResultSetMetaData rsMeta = rs.getMetaData();
for( int i = 1 ; i < rsMeta.getColumnCount()+1 ; i ++ ){
columnInfo.put( rsMeta.getColumnName(i), rsMeta.getColumnTypeName(i));
}

}else { //For View & Table
ResultSet rsColumns = meta.getColumns(catalog, schemaPattern, resultName, null);
while (rsColumns.next()){
columnInfo.put(rsColumns.getString("COLUMN_NAME"), rsColumns.getString("TYPE_NAME"));
}
}
....
private ResultSet executeAndValidateQuery(Statement statement, String query) throws KbValidationException{
ResultSet rs = null;
try{
rs = statement.executeQuery(query);
}
catch(SQLException ex){
throw new KbValidationException(ex.getMessage());
}
return rs;
}

最佳答案

这是一个已知的 JTDS 错误,请参阅 sourceforge.net/p/jtds/bugs/679

关于java - JDBC - JTDS 错误?对于日期和时间类型的列 (x),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7885459/

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