按名称从ResultSet获取值

发布时间:2022-09-01 / 作者:清心寡欲
本文介绍了按名称从ResultSet获取值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何通过属性名称从ResultSet中获取值?

DB-Table(表):

name:TEXT | age:INT | gender:INT

SQL-查询:

SELECT * FROM table WHERE name='john'

输出在java.sql.ResultSet

如何按列名(名称、年龄、性别)获取变量?

推荐答案

使用ResultSetMetaData:

ResultSetMetaData metaData = resultSet.getMetaData();

例如:

...
 ResultSet rs = stmt.executeQuery(query);
   while (rs.next()) {
         int count = metaData.getColumnCount();
         for (int i = 1; i <= count; i++)
         {
           String columnName = metaData.getColumnName(i);
           int type = metaData.getColumnType(i);
           if (type == Types.VARCHAR || type == Types.CHAR) {
               out.print(rs.getString(columnName));
               String name= rs.getString(columnName);
           }
           if (type==Types.INTEGER){
               out.print(rs.getInt(columnName));
               int age= rs.getInt(columnName);
            }
           // ....
           // save columnName and name
         }
    }
 }

...

这篇关于按名称从ResultSet获取值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持吉威生活!



[英文标题]Get value from a ResultSet by name


声明:本媒体部分图片、文章来源于网络,版权归原作者所有,如有侵权,请联系QQ:330946442删除。