How to count the number of foreign keys in a SQL database using java
本问题已经有最佳答案,请猛点这里访问。
如何使用java计算SQL数据库中的外键数。 我有一个数据库,里面有很多表。 我必须计算id中存在的外键总数。 我正在通过Java执行查询。
供应商可以独立地在所有表上使用DatabaseMetaData及其getExportedKeys和getImportedKeys。
1 2 3 4 5 6 7 8 9 10 | DatabaseMetaData meta = conn.getMetaData(); try (ResultSet rs = meta.getExportedKeys(conn.getCatalog(), null, null)) { while (rs.next()) { String pkTable = rs.getString("PKTABLE_NAME"); String fkTable = rs.getString("FKTABLE_NAME"); String fkColumn = rs.getString("FKCOLUMN_NAME"); int keySeq = rs.getInt("KEY_SEQ"); ... } } |
您所要做的就是在数据库上使用Java执行以下查询。
1 2 3 4 5 6 | SELECT TABLE_NAME,COLUMN_NAME,CONSTRAINT_NAME, REFERENCED_TABLE_NAME,REFERENCED_COLUMN_NAME FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE WHERE REFERENCED_TABLE_SCHEMA = '<database>' |
参考:如何查看表或列的所有外键?