ResultSet 动态获取列名

来源:互联网 发布:电脑做文档的软件 编辑:程序博客网 时间:2024/05/21 00:55
 

方法1

ResultSet rs = stmt.executeQuery("SELECT * FROM TABLE");

ResultSetMetaData rsmd = rs.getMetaData();

int count=rsmd.getColumnCount();

String[] name=new String[count];

for(int i=0;i<count;i++)

name[i]=rsmd.getColumnName(i+1);

方法2

DefaultTableModel dtm1 = new DefaultTableModel();
JTable tb1 = new JTable(dtm1);
JScrollPane sp1 = new JScrollPane(tb1);

    ResultSet rs = executeQuery( sqlCode ); //获得结果集
    int row = recCount( rs );     //获得结果集中有几行数据
   ResultSetMetaData rsm =rs.getMetaData(); //获得列集
   int col = rsm.getColumnCount();   //获得列的个数

    String colName[] = new String[col];
    //取结果集中的表头名称, 放在colName数组中
    for (int i = 0; i < col; i++) {   -->第一列,从1开始.所以获取列名,或列值,都是从1开始
    colName[i] = rsm.getColumnName( i + 1 ); -->获得列值的方式一:通过其序号
    }//End for
   rs.beforeFirst();
   String data[][] = new String[row][col];

    //取结果集中的数据, 放在data数组中
    for (int i = 0; i < row; i++) {
     rs.next();
     for (int j = 0; j < col; j++) {
      data[i][j] = rs.getString (j + 1);
      //System.out.println (data[i][j]);
       }
    }//End for
    fdtm.setDataVector (data, colName);
原创粉丝点击