使用 JAVA 类从元数据 DatabaseMetaData 中获取特定数据库表的外键和引用表名
Posted
技术标签:
【中文标题】使用 JAVA 类从元数据 DatabaseMetaData 中获取特定数据库表的外键和引用表名【英文标题】:Getting foreign key and refering table name of particular database table from metadata DatabaseMetaData using JAVA class 【发布时间】:2013-06-18 12:53:08 【问题描述】:我正在编写 java 类来获取所有连接数据库对象(表)。我用过
rs = meta.getExportedKeys(conn.getCatalog(), null, "account_adjustment");
while (rs.next())
String fkTableName = rs.getString("FKTABLE_NAME");
String fkColumnName = rs.getString("FKCOLUMN_NAME");
int fkSequence = rs.getInt("KEY_SEQ");
这是给父表和它的列链接这个问表(account_adjustment)
我也试过了
rs1 = meta.getImportedKeys(conn.getCatalog(), null, "account_adjustment");
while (rs1.next())
String fkTableName = rs1.getString("FKTABLE_NAME");
String fkColumnName = rs1.getString("FKCOLUMN_NAME");
int fkSequence = rs1.getInt("KEY_SEQ");
给出当前表(account_adjustment)表和它的外键列名 但我想要这个外键链接的表名
【问题讨论】:
【参考方案1】:我有解决方案 bt 以其他方式不使用 java,而不是使用 java 获取值,我对“information_schema”(默认情况下在 mysql 中)数据库和“REFERENTIAL_CONSTRAINTS”表执行查询以获取各自的所有参考所需数据库表
【讨论】:
但这不是解决方案。我也需要同样的答案。以上是关于使用 JAVA 类从元数据 DatabaseMetaData 中获取特定数据库表的外键和引用表名的主要内容,如果未能解决你的问题,请参考以下文章
SQLAlchemy Asyncio ORM 在从元数据中检索表和列时无法查询数据库