天天看點

java檢視資料庫資訊和對應表的資訊

public class DataBaseMessage {

public static void main(String[] args) {

getMessage();

}

public static void getMessage(){

Connection connection = null;

ResultSet rs = null;

try {

connection = 擷取connection;

DatabaseMetaData dbMetaData  = connection.getMetaData();

                         System.out.println("資料庫相關資訊 : ");

System.out.println("已知的使用者: "+ dbMetaData.getUserName());    

System.out.println("系統函數的逗号分隔清單: "+ dbMetaData.getSystemFunctions());    

System.out.println("時間和日期函數的逗号分隔清單: "+ dbMetaData.getTimeDateFunctions());    

System.out.println("字元串函數的逗号分隔清單: "+ dbMetaData.getStringFunctions());    

System.out.println("供應商用于 'schema' 的首選術語: "+ dbMetaData.getSchemaTerm());    

System.out.println("URL: " + dbMetaData.getURL());    

System.out.println("是否允許隻讀:" + dbMetaData.isReadOnly());    

System.out.println("的産品名稱:" + dbMetaData.getDatabaseProductName());    

System.out.println("版本:" + dbMetaData.getDatabaseProductVersion());    

System.out.println("驅動程式的名稱:" + dbMetaData.getDriverName());    

System.out.println("驅動程式的版本:" + dbMetaData.getDriverVersion());   

//查詢t_file表格的所有資訊

rs = dbMetaData.getColumns(null, null,"表名稱", null);

//擷取t_file表每條記錄的資訊

while(rs.next()){

System.out.println();System.out.println();

String column_name = rs.getString("COLUMN_NAME");

String type_name = rs.getString("TYPE_NAME");

int column_size = rs.getInt("COLUMN_SIZE");

boolean is_nullable = rs.getBoolean("IS_NULLABLE");

String column_def = rs.getString("COLUMN_DEF");

System.out.println("column_name :"+column_name+"  **** type_name :"+type_name+"  ****   column_size : "+column_size+"  ****   is_nullable : "+is_nullable +"  ****   column_def : "+column_def);

} catch (Exception e) {

e.printStackTrace();

}finally{

//connection.close();

//rs.close();

} catch (Exception e2) {

e2.printStackTrace();