Java获取SQL查询的列名

getConnection();

		PreparedStatement ps = conn.prepareStatement("sql");

		ResultSet rs = ps.executeQuery();

		ResultSetMetaData rsmd = rs.getMetaData();

	    int columnCount = rsmd.getColumnCount(); //列数

	    String columnName = rsmd.getColumnName(1); //第一列列名

==================

方法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
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);

你可能感兴趣的:(sql,sql)