世界震撼.dev

いつか世界を驚かせるためのメモ

JDBCでテーブルのカラム情報を取得する

try{
    if( stmt.execute( "describe TABLENAME" ) ){
        StringBuilder sb = new StringBuilder(  );
        ResultSet describe = stmt.getResultSet( );
        while( describe.next( ) ){
            for( int i = 1; i <= describe.getMetaData( ).getColumnCount( ); i++ ){
                sb.append( describe.getString( i ) ).append( "\t|\t" );
            }
            sb.append( "<br>\n" );
        }
        describe.close( );
    }
}catch( SQLException e ){
    ...
}

DESCRIBEコマンドでテーブルの情報を取得できる

SQLではインデックスは1から始まる

ResultSetオブジェクト.getMetaData( ).getColumnCount( ) で列数を取得できる

appendは標準出力用とブラウザ用で区切り文字をそれぞれ使っている