Fly*_*man 8 java sql-server jtds jdbc
我在MS SQL Server上有一个表,其中一列的数据类型为日期.我正在使用jtds.jar与DB进行JDBC连接.我从Connection获取DatabaseMetaData.在检查DatabaseMetaData中的列时,我发现了这一点
int iType = rsMeta.getInt("DATA_TYPE");
Run Code Online (Sandbox Code Playgroud)
返回列类型,java.sql.Types.VARCHAR它是一个字符串而不是日期.但它也会回归
String tmp = rsMeta.getString("TYPE_NAME");
Run Code Online (Sandbox Code Playgroud)
键入名称作为日期.
但对于Oracle,它返回date数据类型java.sql.Types.DATE.
为什么会有这样的差异?
这是一个已知的 JTDS 错误,请参阅http://sourceforge.net/p/jtds/bugs/679/。
SQLServer Date 类型的返回数据类型作为长度为 10 的 varchar 返回。这是错误的,它应该作为 Sql.Date 返回。int iType = rsMeta.getInt("DATA_TYPE"); 字符串 tmp = rsMeta.getString("TYPE_NAME");
| 归档时间: |
|
| 查看次数: |
2009 次 |
| 最近记录: |