2013-03-12 20 views
0

如何獲取所有約束,如在MS Access數據庫中定義的主鍵和外鍵。 對於MySql,我們使用describe table_name從java中的訪問表中獲取所有約束的名稱

同樣,在java程序中使用它的MS Access的查詢是什麼?

+0

我該如何做到這一點。 – 2013-03-12 07:49:31

+0

是否可以在java中實現這樣的東西 – 2013-03-12 09:22:42

回答

0
import java.sql.*; 
public class DescQueryOutput{ 

    public static void main(String args[]) 
    { 
     try 
     { 
      Class.forName("com.mysql.jdbc.Driver"); 
      Connection con = DriverManager.getConnection ("jdbc:mysql://localhost:3306/test","root","root"); 
      Statement stmt = con.createStatement(); 
      String query = "DESC newaccount"; 

      ResultSet rs = stmt.executeQuery(query); 
      System.out.println("COLUMN NAME\tDATATYPE\tNULL\tKEY\tDEFAULT\tEXTRA"); 
    while (rs.next()) 
    { 
     System.out.print(rs.getString(1)+"\t"); 
     System.out.print(rs.getString(2)+"\t"); 
     System.out.print(rs.getString(3)+"\t"); 
     System.out.print(rs.getString(4)+"\t"); 
     System.out.print(rs.getString(5)+"\t"); 
     System.out.println(rs.getString(6)); 
    } 
     } 

     catch (SQLException e) { 
      e.printStackTrace(); 
     } catch (ClassNotFoundException e) { 
      e.printStackTrace(); 
     } 

     finally { 
     } 
    } 
} 
+0

是的,這是對mysql的查詢 但我想查詢MS Access。 – 2013-03-12 07:33:54

+0

只需根據ms訪問更改連接 – 2013-03-12 07:37:03

+1

但MS Access中不支持「desc table_name」查詢 – 2013-03-12 07:38:29

相關問題