Java में JDBC के DatabaseMetaData इंटरफ़ेस का उपयोग करके MySQL डेटाबेस की संरचना (टेबल्स, कॉलम्स, इंडेक्स आदि) प्रोग्रामेटिक रूप से प्राप्त की जा सकती है।
उदाहरण: 'web' डेटाबेस के सभी टेबल नाम प्राप्त करना
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import com.mysql.jdbc.DatabaseMetaData;
public class GetDatabaseInformationDemo {
public static void main(String[] args) {
Connection con = null;
try {
con = DriverManager.getConnection("jdbc:mysql://localhost:3306/web?useSSL=false", "root", "123456");
DatabaseMetaData metaData = (DatabaseMetaData) con.getMetaData();
String[] tableTypes = {"TABLE"};
ResultSet rs = metaData.getTables(null, null, null, tableTypes);
while (rs.next()) {
System.out.println(rs.getString(3)); // टेबल नाम
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
आउटपुट (उदाहरण)
demotable211 demotable212 demotable213 demotable214 demotable215 demotable216 name select
मुख्य मेटाडेटा मेथड्स: getTables() - टेबल्स, getColumns() - कॉलम्स, getPrimaryKeys() - प्राथमिक कुंजियाँ, getIndexInfo() - इंडेक्स, getCrossReference() - विदेशी कुंजियाँ। MySQL Connector/J लाइब्रेरी आवश्यक है।