Suppression de tables et d'index

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

L'exécution des opérations indiquées par TableRequest est asynchrone. Il s'agit d'opérations potentiellement longues. TableResult est renvoyé par les opérations TableRequest et encapsule l'état de la table. Pour plus d'informations sur la classe TableRequest et ses méthodes, reportez-vous à Référence d'API du kit SDK Java Oracle NoSQL.

Téléchargez le code complet AlterTable.java à partir des 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 vers 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. Pour plus d'informations sur table_request et ses méthodes, reportez-vous à Référence d'API du kit SDK Python Oracle NoSQL.

Téléchargez le code complet AlterTable.py à partir des 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 indiquées par TableRequest est asynchrone. Il s'agit d'opérations potentiellement longues. Cette demande est utilisée en tant qu'entrée d'une opération Client.DoTableRequest(), qui renvoie une valeur TableResult pouvant être utilisée pour effectuer une interrogation jusqu'à ce que la table atteigne l'état souhaité. Pour plus d'informations sur les différentes méthodes de la classe TableRequest, reportez-vous à Référence d'API du kit SDK Go Oracle NoSQL.

Téléchargez le code complet AlterTable.go à partir des 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 renvoie la promesse TableResult. TableResult est un objet JavaScript simple qui encapsule l'état de la table après l'opération DDL. Pour plus d'informations sur les méthodes, reportez-vous à 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 renvoient Task<TableResult>. L'instance TableResult encapsule l'état de la table après l'opération DDL. Pour plus d'informations sur ces méthodes, reportez-vous à Référence d'API du kit SDK Dotnet Oracle NoSQL.

Téléchargez le code complet AlterTable.cs à partir des 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 indiquées par la classe TableRequest est asynchrone. Il s'agit d'opérations potentiellement longues. TableResult est renvoyé par les opérations TableRequest et encapsule l'état de la table. Pour plus d'informations sur la classe TableRequest et ses méthodes, reportez-vous à Référence d'API du kit SDK Java Oracle NoSQL.

Téléchargez le code complet Indexes.java à partir des 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 vers 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. Pour plus d'informations sur table_request et ses méthodes, reportez-vous à Référence d'API du kit SDK Python Oracle NoSQL.

Téléchargez le code complet Indexes.py à partir des 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 indiquées par TableRequest est asynchrone. Il s'agit d'opérations potentiellement longues. Cette demande est utilisée en tant qu'entrée d'une opération Client.DoTableRequest(), qui renvoie une valeur TableResult pouvant être utilisée pour effectuer une interrogation jusqu'à ce que la table atteigne l'état souhaité. Pour plus d'informations sur les différentes méthodes de la classe TableRequest, reportez-vous à Référence d'API du kit SDK Go Oracle NoSQL.

Téléchargez le code complet Indexes.go à partir des 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 renvoie la promesse TableResult. TableResult est un objet JavaScript simple qui contient le statut de l'opération DDL, tel que TableState, son nom, son schéma et son TableLimits. Pour plus d'informations sur les méthodes, reportez-vous à 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 renvoient Task<TableResult>. L'instance TableResult contient le statut de l'opération LDD telle que TableState et le schéma de table. Pour plus d'informations sur ces méthodes, reportez-vous à Référence d'API du kit SDK Dotnet Oracle NoSQL.

Téléchargez le code complet Indexes.cs à partir des 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);
}