JDBC cung cấp interface DatabaseMetaData để truy xuất metadata: danh sách bảng, cột, khóa chính, index, v.v. Dưới đây ví dụ liệt kê tên bảng trong database web.
Mã Java ví dụ
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.DatabaseMetaData;
public class GetDatabaseInfoDemo {
public static void main(String[] args) {
Connection con = null;
try {
con = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/web?useSSL=false",
"root", "123456");
DatabaseMetaData meta = con.getMetaData();
String[] types = {"TABLE"};
ResultSet rs = meta.getTables(null, null, "%", types);
while (rs.next()) {
System.out.println(rs.getString("TABLE_NAME"));
}
} catch (Exception e) {
e.printStackTrace();
} finally {
if (con != null) try { con.close(); } catch (Exception ignore) {}
}
}
}
Kết quả mẫu
demotable211 demotable212 demotable213 demotable214 demotable215 demotable216 name select
Các phương thức hữu ích khác:
getColumns(catalog, schema, table, columnPattern)- thông tin cộtgetPrimaryKeys(catalog, schema, table)- khóa chínhgetImportedKeys / getExportedKeys- khóa ngoạigetIndexInfo- chỉ mục