mysql 获取所有的索引 jdbc_从Oracle使用JDBC获取所有外键唯一索引

我有一个表与外键到另一个表中的唯一列。我可以看到外键被正确定义,但是当我尝试使用下面提到的使用JDBC的代码来获得它时,我没有看到它。我已经验证过,当外键引用另一个表的主键时,这会起作用。从Oracle使用JDBC获取所有外键唯一索引

所以我的问题是“如何使用JDBC在Oracle中获得唯一索引列的外键?”。

ResultSet rset = databaseMetaData.getImportedKeys(null, dbName, tableName);

while(rset.next()){

String column_name = rset.getString("FKCOLUMN_NAME");

String pk_table = rset.getString("PKTABLE_NAME");

String pk_column = rset.getString("PKCOLUMN_NAME");

String constraint_name = rset.getString("FK_NAME");

System.out.println(column_name + " ==> " + pk_column + "(TBL:" + pk_table + ")(CN:" + constraint_name + ")");

}

rset.close();

附加信息:有人曾用getCrossReference建议,但与问题是,我需要知道引用约束的源和目标表事先我不知道。 另外我正在寻找一种纯粹的jdbc api解决方案,它不使用任何特殊的Oracle模式或查询。我的应用程序处理多个数据库,但我试图将它隐藏在一层通用jdbc api后面。

2014-05-16

MickJ

+0

嗨米克我有同样的问题,我试图从一个给定的主键获取所有的外键和他们的表来知道表之间的关系,你有没有发现足够好的东西? –

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值