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