gpt4 book ai didi

java - 即使存在外部数据库,DatabaseMetada.getImportedKey 也为空

转载 作者:太空宇宙 更新时间:2023-11-04 11:33:00 27 4
gpt4 key购买 nike

对于我的项目,我尝试使用 DatabaseMetada 对象形式 jdbc 获取表中的所有外键,但是当我执行以下代码时,即使我的表包含外键,结果集也始终为空?

ResultSet v_resultPrimaryKey = p_metadata.getImportedKeys(null, Tools.getDBName(), "bookmarks_tags");


if (v_resultPrimaryKey.next()) {
System.out.println("test");
v_resultPrimaryKey.beforeFirst();
v_resultPrimaryKey.beforeFirst();

while (v_resultPrimaryKey.next()) {
if (p_att.equals(v_resultPrimaryKey.getString("FKCOLUMN_NAME"))) {
v_fk = v_resultPrimaryKey.getString("PKTABLE_NAME") + "."
+ v_resultPrimaryKey.getString("PKCOLUMN_NAME");
v_fkName = v_resultPrimaryKey.getString("FK_NAME");
}
}

if(!v_fk.equals("")){
v_foreignKey = new ForeignKey(v_fkName, v_fk);
}


}

最佳答案

偶然发现了这一点,如果有人看到它,这可能会有所帮助

DatabaseMetaData p_metadata= connection.getMetaData();
ResultSet v_resultPrimaryKey = p_metadata.getImportedKeys(null, Tools.getDBName(), "bookmarks_tags");

if (v_resultPrimaryKey.next()) {
System.out.println("test");
v_resultPrimaryKey.beforeFirst();
v_resultPrimaryKey.beforeFirst();

while (v_resultPrimaryKey.next()) {
if (p_att.equals(v_resultPrimaryKey.getString("FKCOLUMN_NAME"))) {
String v_fk = v_resultPrimaryKey.getString("PKTABLE_NAME") + "."
+ v_resultPrimaryKey.getString("PKCOLUMN_NAME");
String v_fkName = v_resultPrimaryKey.getString("FK_NAME");
}
}

if(!v_fk.equals("")){
v_foreignKey = new ForeignKey(v_fkName, v_fk);
}


}

关于java - 即使存在外部数据库,DatabaseMetada.getImportedKey 也为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43590609/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com