jdbc DatabaseMetaData 接口的getColumns方法 数值型列长度的问题

jstat 发布于 2012/11/23 19:40
阅读 1K+
收藏 0
DatabaseMetaData metaData= con.getMetaData();

rs = metaData.getColumns(null,metaData.getUserName(), tableName.toUpperCase(), null);

rs.getInt("COLUMN_SIZE")

数值型获得的长度适中是10

数据库是mysql

加载中
0
FoxHu
FoxHu
那可能你表中的int字段长度设定的就是10, 把建表语句贴出来看看!
0
jstat
jstat

原因找到了mysql的int 精度就是11 去掉一个表示正负的符号 就是10 我们设置的是显示宽度

0
happysoul
happysoul

最近搞这玩意 发现你这个方法获取到的是 存储用的字节长度 并不是 字段长度

举例 varchar(10) 和 nvarchar (10)显示的长度会变成 10 和 20 

时间戳也会有问题

返回顶部
顶部