通过JDBC显示多列索引的列名 [英] Show column names of multiple-colum index via JDBC

查看:70
本文介绍了通过JDBC显示多列索引的列名的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

有人知道如何通过 JDBC SQL ) >?我确实知道如何获取所有索引列(请参见代码),但是通过这种方式,我无法看到哪些列链接到单个索引。

Does anyone know how to get the column names of an index that spans multiple columns (see SQL) via JDBC ? I do know how to get all index columns (see code), but this way I cannot see which columns are linked to a single index.

CREATE TABLE IF NOT EXISTS `foo` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `test1` int(11) NOT NULL,
  `test2` int(11) NOT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `test1` (`test1`,`test2`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

DatabaseMetaData md = connection.getMetaData(); // assumed that connection exists
ResultSet rs = md.getIndexInfo(null, dbSchema, "foo", true, false);
while (rs.next()) {
    String columnName = rs.getString("COLUMN_NAME");
}


推荐答案

用于多列索引ResultSet中将返回多个具有相同INDEX_NAME但具有不同COLUMN_NAME的条目

For a multi-column index multiple entries will be returned in ResultSet with the same INDEX_NAME but different COLUMN_NAME

这篇关于通过JDBC显示多列索引的列名的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆