Suppression de tables et d'index

Vous pouvez utiliser l'API TableRequest pour supprimer une table NoSQL.

L'exécution des opérations spécifiées parTableRequest est asynchrone. Il s'agit d'opérations potentiellement de longue durée. TableResult est retourné par les opérations TableRequest et encapsule l'état de la table. Voir Informations de référence sur l'API de la trousse SDK Java pour Oracle NoSQL pour plus de détails sur la classe TableRequest et ses méthodes.

Téléchargez le code complet AlterTable.java dans les exemples ici.
/*Drop the table*/
private static void dropTab(NoSQLHandle handle) throws Exception {
   String dropTableDDL = "DROP TABLE " + tableName;
   TableRequest treq = new TableRequest().setStatement(dropTableDDL);
   TableResult tres = handle.tableRequest(treq);
   tres.waitForCompletion(handle, 60000, /* wait 60 sec */
       1000); /* delay ms for poll */
   System.out.println("Table " + tableName + " is dropped");
}

Vous pouvez utiliser la classe borneo.TableRequest pour supprimer une table. Tous les appels à borneo.NoSQLHandle.table_request() sont asynchrones, il est donc nécessaire de vérifier le résultat et d'appeler borneo.TableResult.wait_for_completion() pour attendre la fin de l'opération. Voir Informations de référence sur l'API de la trousse SDK Python pour Oracle NoSQL pour plus de détails sur table_request et ses méthodes.

Téléchargez le code complet AlterTable.py dans les exemples ici.
def drop_table(handle):
   statement = '''DROP TABLE stream_acct'''
   request = TableRequest().set_statement(statement)
   table_result = handle.do_table_request(request, 40000, 3000)
   table_result.wait_for_completion(handle, 40000, 3000)
   print('Dropped table: stream_acct')

Vous pouvez utiliser la classe TableRequest pour supprimer une table. L'exécution des opérations spécifiées par TableRequest est asynchrone. Il s'agit d'opérations potentiellement de longue durée. Cette demande est utilisée en tant qu'entrée d'une opération Client.DoTableRequest(), qui retourne une valeur TableResult qui peut être utilisée pour scruter jusqu'à ce que la table atteigne l'état souhaité. Voir Informations de référence sur l'API de la trousse SDK Go pour Oracle NoSQL pour plus de détails sur les différentes méthodes de la classe TableRequest.

Téléchargez le code complet AlterTable.go dans les exemples ici.
//drop an existing table
func dropTable(client *nosqldb.Client, err error, tableName string)(){
   stmt := fmt.Sprintf("DROP TABLE %s",tableName)
   tableReq := &nosqldb.TableRequest{
		Statement: stmt,
   }
   tableRes, err := client.DoTableRequest(tableReq)
   return
}

Vous pouvez utiliser la méthode tableDDL pour supprimer une table. Cette méthode est asynchrone et retourne une promesse de TableResult. TableResult est un objet JavaScript brut qui encapsule l'état de la table après l'opération LDD. Pour plus de détails sur la méthode, voir la classe NoSQLClient.

Téléchargez le code JavaScript complet AlterTable.js à partir des exemples ici et le code TypeScript complet AlterTable.ts à partir des exemples ici.
//drop a table
async function dropTable(handle) {
   const dropDDL = `DROP TABLE ${TABLE_NAME}`;
   let res =  await handle.tableDDL(dropDDL);
   console.log('Table dropped: ' + TABLE_NAME);
}

Vous pouvez utiliser l'une des méthodes ExecuteTableDDLAsync ou ExecuteTableDDLWithCompletionAsync pour supprimer une table. Les deux méthodes retournent Task<TableResult>. L'instance TableResult encapsule l'état de la table après l'opération LDD. Pour plus de détails sur ces méthodes, voir Informations de référence sur l'API de la trousse SDK Dotnet pour Oracle NoSQL.

Téléchargez le code complet AlterTable.cs dans les exemples ici.
private static async Task dropTable(NoSQLClient client){
   var sql = $@"DROP TABLE {TableName}";
   var tableResult = await client.ExecuteTableDDLAsync(sql);
   // Wait for the operation completion
   await tableResult.WaitForCompletionAsync();
   Console.WriteLine("  Table {0} is dropped", tableResult.TableName);
}

Vous pouvez utiliser l'API TableRequest pour supprimer un index d'une table NoSQL.

L'exécution des opérations spécifiées par la classe TableRequest est asynchrone. Il s'agit d'opérations potentiellement de longue durée. TableResult est retourné par les opérations TableRequest et encapsule l'état de la table. Voir Informations de référence sur l'API de la trousse SDK Java pour Oracle NoSQL pour plus de détails sur la classe TableRequest et ses méthodes.

Téléchargez le code complet Indexes.java dans les exemples ici.
/* Drop the index acct_episodes*/
private static void dropIndex(NoSQLHandle handle) throws Exception {
   String dropIndexDDL = "DROP INDEX acct_episodes ON " + tableName;
   TableRequest treq = new TableRequest().setStatement(dropIndexDDL);
   TableResult tres = handle.tableRequest(treq);
   tres.waitForCompletion(handle, 60000, /* wait 60 sec */
            1000); /* delay ms for poll */
   System.out.println("Index acct_episodes on " + tableName + " is dropped");
}

Vous pouvez utiliser la classe borneo.TableRequest pour supprimer un index de table. Tous les appels à borneo.NoSQLHandle.table_request() sont asynchrones, il est donc nécessaire de vérifier le résultat et d'appeler borneo.TableResult.wait_for_completion() pour attendre la fin de l'opération. Voir Informations de référence sur l'API de la trousse SDK Python pour Oracle NoSQL pour plus de détails sur table_request et ses méthodes.

Téléchargez le code complet Indexes.py dans les exemples ici.
#drop the index
def drop_index(handle):
   statement = '''DROP INDEX acct_episodes ON stream_acct'''
   request = TableRequest().set_statement(statement)
   table_result = handle.do_table_request(request, 40000, 3000)
   table_result.wait_for_completion(handle, 40000, 3000)
   print('Index acct_episodes on the table stream_acct is dropped')

Vous pouvez utiliser la classe TableRequest pour supprimer un index de table. L'exécution des opérations spécifiées par TableRequest est asynchrone. Il s'agit d'opérations potentiellement de longue durée. Cette demande est utilisée en tant qu'entrée d'une opération Client.DoTableRequest(), qui retourne une valeur TableResult qui peut être utilisée pour scruter jusqu'à ce que la table atteigne l'état souhaité. Voir Informations de référence sur l'API de la trousse SDK Go pour Oracle NoSQL pour plus de détails sur les différentes méthodes de la classe TableRequest.

Téléchargez le code complet Indexes.go dans les exemples ici.
//drops an index from a table
func dropIndex(client *nosqldb.Client, err error, tableName string)(){
   stmt := fmt.Sprintf("DROP INDEX acct_episodes ON %s",tableName)
   tableReq := &nosqldb.TableRequest{
		Statement: stmt,
   }
   tableRes, err := client.DoTableRequest(tableReq)
   if err != nil {
      fmt.Printf("cannot initiate DROP INDEX request: %v\n", err)
      return
   }
   // The drop index request is asynchronous, wait for drop index to complete.
   _, err = tableRes.WaitForCompletion(client, 60*time.Second, time.Second)
   if err != nil {
      fmt.Printf("Error finishing DROP INDEX request: %v\n", err)
      return
   }
   fmt.Println("Dropped index acct_episodes on table ", tableName)
   return
}

Vous pouvez utiliser la méthode tableDDL pour supprimer un index de table. Cette méthode est asynchrone et retourne une promesse de TableResult. TableResult est un objet JavaScript brut qui contient le statut de l'opération LDD, par exemple TableState, nom, schéma et TableLimits. Pour plus de détails sur la méthode, voir la classe NoSQLClient.

Téléchargez le code JavaScript complet Indexes.js à partir des exemples ici et le code TypeScript complet Indexes.ts à partir des exemples ici.
//drops an index
async function dropIndex(handle) {
   const dropindDDL = `DROP INDEX acct_episodes ON ${TABLE_NAME}`;
   let res =  await handle.tableDDL(dropindDDL);
   console.log('Index acct_episodes is dropped from table: ' + TABLE_NAME);
}

Vous pouvez utiliser l'une des méthodes ExecuteTableDDLAsync ou ExecuteTableDDLWithCompletionAsync pour supprimer un index de table. Les deux méthodes retournent Task<TableResult>. L'instance TableResult contient le statut de l'opération LDD telle que TableState et le schéma de table. Pour plus de détails sur ces méthodes, voir Informations de référence sur l'API de la trousse SDK Dotnet pour Oracle NoSQL.

Téléchargez le code complet Indexes.cs dans les exemples ici.
private static async Task dropIndex(NoSQLClient client){
   var sql = $@"DROP INDEX acct_episodes on {TableName}";
   var tableResult = await client.ExecuteTableDDLAsync(sql);
   // Wait for the operation completion
   await tableResult.WaitForCompletionAsync();
   Console.WriteLine(" Index acct_episodes is dropped from table Table {0}",
                tableResult.TableName);
}