通过 Python SDK 查询映射表的主键和关联索引的名称、字段及索引类型等信息。
前提条件
安装Tablestore Python SDK并初始化客户端。
SQL 查询功能需要使用 5.4.2 及以上版本,建议使用最新版本。
功能说明
调用 exe_sql_query 方法执行 SHOW INDEX 语句,查询指定映射表的主键和关联索引信息。
def exe_sql_query(self, query)
查询数据表映射时,结果包含主键,以及数据表下二级索引和多元索引的字段信息。查询多元索引映射时,结果仅包含主键和指定多元索引的字段信息。
以下示例查询 example_search_table 的索引信息。
query = "SHOW INDEX IN example_search_table"
row_list, _, _ = client.exe_sql_query(query)
for row in row_list:
values = dict(row.attribute_columns)
print(values["Key_name"], values["Column_name"], values["Index_type"])
参数说明
exe_sql_query 方法包含以下参数。
|
名称 |
类型 |
说明 |
|
query(必选) |
String |
要执行的 |
返回值
exe_sql_query 方法返回一个三元组,包含以下元素。
|
元素 |
类型 |
说明 |
|
|
List[Row] |
索引信息列表。每一行对应一个主键、二级索引或多元索引字段。 |
|
|
List[Tuple] |
各数据表消耗的读写 CU。每个元组包含数据表名称和 |
|
|
List[Tuple] |
各多元索引消耗的读写 CU。每个元组包含多元索引名称和 |
结果集字段
|
字段 |
类型 |
说明 |
|
|
String |
映射表名称。 |
|
|
Integer |
是否允许索引值重复。 |
|
|
String |
索引名称。主键返回 |
|
|
Integer |
字段在索引中的顺序,从 1 开始。 |
|
|
String |
索引字段名称。 |
|
|
String |
字段是否为数据表预定义列。 |
|
|
String |
多元索引字段的查询类型。 |
|
|
String |
字段在索引中的排序方式。 |
|
|
Integer |
索引中不同值数量的估算值。 |
|
|
Integer |
索引字段的前缀长度。 |
|
|
String |
索引的压缩方式。 |
|
|
String |
字段是否允许为空。 |
|
|
String |
索引类型。全局二级索引返回 |
|
|
String |
索引备注。 |
|
|
String |
索引注释。 |
|
|
String |
索引是否可见。 |
|
|
String |
索引表达式。 |