java - 如何获取结果集的字符串值
问题描述
我想知道是否有一种简单的方法可以知道我从某些不属于我的 API 获得的结果集的类型?
当我记录类型时,它打印为 1003。有没有办法让我得到对应于 1003 的字符串?
rs = st.executeQuery(sql);
System.out.println(rs.getType());
解决方案
您正在打印结果集类型,这可能不是您想要的。请查看 API 文档ResultSet
。特别是对于ResultSet.getType()
,返回的值 1003 是常量的值ResultSet.TYPE_FORWARD_ONLY
(有关值,请参阅此文档页面)。
鉴于您没有解释您想要实现的目标,我不确定您需要做什么。如果您真的想打印结果集类型,那么您可以执行以下操作:
private String getResultSetTypeName(int resultSetType) {
switch (resultSetType) {
case ResultSet.TYPE_FORWARD_ONLY:
return "TYPE_FORWARD_ONLY";
case ResultSet.TYPE_SCROLL_INSENSITIVE:
return "TYPE_SCROLL_INSENSITIVE";
case ResultSet.TYPE_SCROLL_SENSITIVE:
return "TYPE_SCROLL_SENSITIVE";
default:
throw new IllegalArgumentException("Invalid result set type value: " + resultSetType);
}
}
然后使用此方法将类型代码转换为字符串。
推荐阅读
- ruby-on-rails - Docker 错误 Getaddrinfo: Name or service not known in Puma Nginx server-Mac os
- mysql - Windows 10中的Mysql 8.0安装错误
- jmeter - 让 Jmeter 报告错误失败
- javascript - 在 iffe 中访问“this”上下文
- here-api - 此处地图中两点距离计算的单位是什么?
- mysql - 喜欢“%伟哥%”
- javascript - 如何在javascript中使用正则表达式仅删除最后一个新行
- mysql - MySQL返回所有选择而不是输出变量
- css - React-Emotion - 使用 EmotionJS 为 div 设置动画
- c - 为什么这个按位运算没有给出预期的输出?