DatabaseMetaData, ResultSetMetaData를 이용하여 데이터베이스와 테이블의 기본정보를 추출하는 예
import java.sql.*; public class JDBCMetaDataExample { public static void main(String args[]) { try { // Loading database driver Class.forName("oracle.jdbc.OracleDriver");// Connecting to the database Connection conn = DriverManager.getConnection( "jdbc:oracle:thin:@localhost:1521:ORCL", "scott", "tiger");
DatabaseMetaData metaData = conn.getMetaData();
ResultSet rs = metaData.getTypeInfo(); System.out .println("Printing All Premitive DataTypes supported by this Database Applications\n"); while (rs.next()) { System.out.println(rs.getString(1)); } rs.close(); Statement stmt = conn.createStatement(); ResultSet resultSet = stmt.executeQuery("SELECT * FROM emp");
ResultSetMetaData md = resultSet.getMetaData();
System.out.println("\n Fetching Query............."); for (int i = 1; i <= md.getColumnCount(); i++) System.out.print(md.getColumnLabel(i) + " "); System.out.println(); while (resultSet.next()) { for (int i = 1; i <= md.getColumnCount(); i++) System.out.print(resultSet.getString(i) + " "); System.out.println(); } resultSet.close(); stmt.close(); conn.close(); } catch (SQLException e) { System.out.println(e.toString()); } catch (Exception e) { System.out.println(e); } } }