通過jdbc獲取數據庫表字段信息

在使用jdbc查詢數據庫返回的ResultSet中,含有一個對象“ResultSetMetaData”,可以通過這個對象來獲取表字段的所有信息,包括:字段名,字段類型,字段類型名稱等等,非常的不錯,這樣我們在使用查詢的時候就有了更大的自由發揮程度,我們在獲取一張表裏的值時,並不需要對數據庫表有過多的瞭解,我們照樣可以對它進行正常的操作。

舉例如下:
package test.come.hyq.src;

import java.sql.*;

public class HyqTest {
  public HyqTest() {
  }

  public static void main(String[] args){

    String driver = "oracle.jdbc.driver.OracleDriver";

    String strUrl = "jdbc:oracle:thin:@127.0.0.1:1521: HYQ";

    Statement stmt = null;

    ResultSet rs = null;

    Connection conn = null;

    PreparedStatement pstmt = null;

    ResultSetMetaData rsmd = null;

    try {
      Class.forName(driver);

      conn =  DriverManager.getConnection(strUrl, "hyq", "hyq");

      pstmt = conn.prepareStatement("SELECT * FROM H_TEST");

      rs = pstmt.executeQuery();

      rsmd = rs.getMetaData(); //獲取字段名

      if(rsmd != null){

        int count  = rsmd.getColumnCount();

        for(int i=1;i<=count;i++){

          System.out.println("hyqTest======"+rsmd.getColumnName(i));

        }

      }
      
    }

    catch (SQLException ex2) {

      ex2.printStackTrace();

    }

    catch (Exception ex2) {

      ex2.printStackTrace();

    }
    finally{
   
      rsmd  = null;

      try {

        if(rs != null){

          rs.close();

          if(stmt!=null){

            stmt.close();

          }

          if(conn!=null){

            conn.close();

          }

        }

      }

      catch (SQLException ex1) {

      }
}
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章