Exécutez l'instruction show index pour récupérer le nom de l'index, les champs d'index et le type d'index d'une table.
Pour plus d'informations sur l'instruction show index, consultez la rubrique Interroger les informations d'index d'une table.
Prérequis
Avant de commencer, assurez-vous d'avoir :
Initialisé un client Tablestore. Pour plus d'informations, consultez la rubrique Initialiser un client Tablestore.
Créé une table de mappage. Pour plus d'informations, consultez la rubrique Créer une table de mappage.
Notes d'utilisation
La fonctionnalité de requête SQL nécessite le SDK Tablestore pour .NET version 5.0.0 ou ultérieure.
Pour plus d'informations, consultez l'historique des versions du SDK Tablestore pour .NET .
Paramètres
|
Paramètre |
Description |
|
query |
L'instruction SQL à exécuter. Définissez ce paramètre sur une instruction |
Exemples
L'exemple suivant exécute l'instruction show index in test_table sur une table nommée test_table. Le code soumet la requête SQL, lit le schéma du jeu de résultats, puis parcourt chaque ligne pour afficher les champs d'index.
/// <summary>
/// Query index information about a table.
/// </summary>
/// <param name="otsClient"></param>
public static void DescribeIndex(OTSClient otsClient)
{
SQLQueryRequest sqlQueryRequest = new SQLQueryRequest("show index in test_table");
SQLQueryResponse sqlQueryResponse = otsClient.SQLQuery(sqlQueryRequest);
SQLTableMeta sqlTableMeta = sqlQueryResponse.GetSQLResultSet().GetSQLTableMeta();
Console.WriteLine(JsonConvert.SerializeObject(sqlTableMeta.GetSchema()));
ISQLResultSet resultSet = sqlQueryResponse.GetSQLResultSet();
while (resultSet.HasNext())
{
ISQLRow row = resultSet.Next();
Console.WriteLine(row.GetString("Table") + " " + row.GetLong("Non_unique") + " " + row.GetString("Key_name") + " " +
row.GetLong("Seq_in_index") + " " + row.GetString("Column_name") + " " + row.GetString("Index_type"));
}
}
Champs de réponse
Le jeu de résultats renvoie les champs suivants pour chaque entrée d'index.
|
Champ |
Type |
Description |
|
Table |
String |
Le nom de la table. |
|
Non_unique |
Long |
Indique si l'index autorise les valeurs en double. La valeur |
|
Key_name |
String |
Le nom de l'index. |
|
Seq_in_index |
Long |
La position de la colonne dans l'index, en commençant par |
|
Column_name |
String |
Le nom de la colonne indexée. |
|
Index_type |
String |
Le type d'index. |
Références
Pour utiliser un index de recherche spécifique lors de l'interrogation des données avec la fonctionnalité de requête SQL, exécutez l'instruction
CREATE TABLEafin de créer une table de mappage pour l'index de recherche. Pour plus d'informations, consultez la rubrique Créer des tables de mappage pour les index de recherche.Pour interroger des données en fonction des champs d'index à l'aide d'instructions SQL, consultez la rubrique Interroger des données.