Get Table Name and Columns using DatabaseMetaData by Joo8111

SQLite를 자바로 핸들링하는 프로젝트를 진행 중이다.
JDBC의 위력을 모르고.. php의 mysql_list_tables 같은 것은 없는건가? 하고 있었다. 후....
다음의 코드는 모든 DB에 사용될 수 있다.


     DatabaseMetaData dbmd = conn.getMetaData();

를 통해 연결된 DB에 접근.

    String[] types = {"TABLE"} ;
    ResultSet rs = dbmd.getTables(null, null, "%", types) ;

의 형태로 Table에 대한 정보를 가져올 수 있다.

    ResultSet rsColumns = dbmd.getColumns(null, null, "tablename", "%") ;

의 형태로 Column에 대한 정보를 가져올 수 있다.

    rsColumns.getString("COLUMN_NAME");
    rsColumns.getString("TYPE_NAME");
    rsColumns.getInt("COLUMN_SIZE");
    rsColumns.getInt("NULLABLE");
    rsColumns.getInt("ORDINAL_POSITION");

로 column에 대한 각 정보를 가져온다.


참고 1 : Listing All Table Names in a Database (Java Developers Almanac ...
참고 2 : Get Column Name : Column : Database SQL JDBC : Java examples ...


덧글

댓글 입력 영역