Closed cbqqkcel closed 3 weeks ago
正常是 getString 返回名称,getInt 返回数值,如果不是这个结果可能存在 bug,也可能是调用了 getObject
数据库对于枚举类型的字段是给客户端同时返回 string 和 int 两个值的,jdbc 驱动会根据用户调用的 api 不同而返回合适的值。
我用Datagrip查询返回的是 int 类型
其他工具没有试过。
getString 没问题。应该是getObject导致的
用DataGrip链接h2 返回的是字符串
EnumTypeTest 这个枚举测试类是能正常显示的 lealone 自己的客户端也是显示名称。
如果调用 getObject 目前确实会返回数值。
插入的使用的是名称。insert into JdbcResultSetMetaDataTest (f1, f2) values (0, 'a') 查询返回的时候是顺序了。
mysql h2 都是返回名称。
我喜欢用枚举的原因是,使用字符串太长了占用空间。使用int类型,查询的时候都是数字不能直观看到这个值是啥意思。 枚举刚好解决这个问题,存的是int查询出来显示的是字符串。