通过 Java SDK 查询映射表的主键和关联索引的名称、字段及索引类型等信息。
前提条件
-
安装Tablestore Java SDK并初始化客户端。
-
使用 5.13.0 及以上版本的 Tablestore Java SDK。
功能说明
调用 sqlQuery 方法执行 SHOW INDEX 语句,查询指定映射表的索引信息。
SQLQueryResponse sqlQuery(SQLQueryRequest request)
查询数据表映射时,结果包含主键以及该数据表下二级索引和多元索引的字段信息。查询多元索引映射时,结果仅包含主键和指定多元索引的字段信息。
以下示例查询 example_search_index_mapping 多元索引映射的索引信息,并读取常用返回字段。
SQLQueryRequest request =
new SQLQueryRequest("SHOW INDEX IN example_search_index_mapping");
SQLQueryResponse response = client.sqlQuery(request);
SQLResultSet resultSet = response.getSQLResultSet();
while (resultSet.hasNext()) {
SQLRow row = resultSet.next();
System.out.println(
row.getString("Table") + ", "
+ row.getString("Key_name") + ", "
+ row.getString("Column_name") + ", "
+ row.getString("Index_type"));
}
参数说明
SQLQueryRequest 包含以下参数。
|
名称 |
类型 |
说明 |
|
query(必选) |
String |
要执行的 |
返回值
SQLQueryResponse 包含以下与映射表索引相关的字段。
|
字段 |
类型 |
说明 |
|
|
SQLStatementType |
通过 |
|
|
ByteString |
索引信息的序列化数据。通过 |
结果集字段
SQLResultSet 中的每一行对应一个主键、二级索引或多元索引字段,包含以下列。
|
字段 |
类型 |
说明 |
|
|
String |
映射表名称。 |
|
|
Long |
索引是否允许重复值。 |
|
|
String |
索引名称。主键返回 |
|
|
Long |
字段在索引中的顺序,从 |
|
|
String |
索引字段名称。 |
|
|
String |
字段是否为数据表的预定义列。 |
|
|
String |
多元索引字段的查询类型。 |
|
|
String |
字段在索引中的排序方式。 |
|
|
Long |
索引中不同值数量的估算值。 |
|
|
Long |
索引字段的前缀长度。 |
|
|
String |
索引的压缩方式。 |
|
|
String |
字段是否允许为空。 |
|
|
String |
索引类型。全局二级索引返回 |
|
|
String |
索引备注。 |
|
|
String |
索引注释。 |
|
|
String |
索引是否可见。 |
|
|
String |
索引表达式。 |