Utilisation de l'API Get pour extraire des données

Utilisez l'API GetRequest pour extraire une seule rangée de données à l'aide de la clé primaire.

Par défaut, toutes les opérations de lecture sont avec cohérence à terme. Ce type de lecture est moins coûteux que ceux qui utilisent la cohérence absolue. Vous pouvez modifier la cohérence par défaut d'une instance NoSQLHandle à l'aide de la méthode setConsistency() dans la classe Consistency.

La classe GetRequest fournit un moyen simple et puissant de lire des données, tandis que les requêtes peuvent être utilisées pour des requêtes de lecture plus complexes. Pour lire des données d'une table, indiquez la table cible et la clé cible à l'aide de la classe GetRequest et utilisez NoSQLHandle.get() pour exécuter la demande. Le résultat de l'opération est disponible dans GetResult. Vous pouvez modifier la cohérence par défaut pour une instance NoSQLHandle à l'aide des méthodes NoSQLHandleConfig.setConsistency(oracle.nosql.driver.Consistency) et GetRequest.setConsistency().

Téléchargez le code complet QueryData.java dans les exemples ici.
//Fetch single row using get API
private static void getRow(NoSQLHandle handle,String colName,int Id) throws Exception {
   MapValue key = new MapValue().put(colName, Id);
   GetRequest getRequest = new GetRequest().setKey(key)
                                        .setTableName(tableName);
   GetResult getRes = handle.get(getRequest);
   /* on success, GetResult.getValue() returns a non-null value */
   if (getRes.getValue() != null) {
      System.out.println("\t" +getRes.getValue().toString());
   } else {
      System.out.println("Get Failed");
   }
}

Note :

Pour extraire des données d'une table enfant, spécifiez le nom complet de la table (parent_tablename.child_tablename) dans la méthode setTableName. Téléchargez le code complet TableJoins.java à partir des exemples pour comprendre comment extraire des données d'une table parent-enfant ici.

Utilisez l'API GetRequest pour extraire une seule rangée de données à l'aide de la clé primaire. Vous pouvez lire des rangées uniques à l'aide de la méthode borneo.NoSQLHandle.get(). Cette méthode vous permet d'extraire un enregistrement en fonction de sa valeur de clé primaire. La classe borneo.GetRequest est utilisée pour les opérations d'obtention simples. Elle contient la valeur de clé primaire pour la rangée cible et retourne une instance de borneo.GetResult. Vous pouvez modifier la cohérence par défaut d'un élément borneo.NoSQLHandle à l'aide de borneo.NoSQLHandleConfig.set_consistency() avant de créer l'indicateur. Il peut être modifié pour une seule demande à l'aide de borneo.GetRequest.set_consistency().

Téléchargez le code complet QueryData.py dans les exemples ici.
# Fetch single row using get API
def getRow(handle,colName,Id):
  request = GetRequest().set_table_name('stream_acct')
  request.set_key({colName: Id})
  print('Query results: ')
  result = handle.get(request)
  print('Query results are' + str(result.get_value()))

Note :

Pour extraire des données d'une table enfant, spécifiez le nom complet de la table (parent_tablename.child_tablename) dans la méthode set_table_name. Téléchargez le code complet TableJoins.py à partir des exemples pour comprendre comment extraire des données d'une table parent-enfant ici.

Utilisez l'API GetRequest pour extraire une seule rangée de données à l'aide de la clé primaire. Vous pouvez lire des rangées uniques à l'aide de la fonction Client.Get. Cette fonction vous permet d'extraire un enregistrement en fonction de sa valeur de clé primaire. nosqldb.GetRequest est utilisé pour les opérations d'obtention simples. Elle contient la valeur de clé primaire pour la rangée cible et retourne une instance de nosqldb.GetResult. Si l'opération get réussit, une valeur non nulle GetResult.Version est retournée. Vous pouvez modifier la cohérence par défaut d'un nosqldb.RequestConfig à l'aide de RequestConfig.Consistency avant de créer le client. Il peut être modifié pour une seule demande à l'aide du champ GetRequest.Consistency.

Téléchargez le code complet QueryData.go dans les exemples ici.
//fetch data from the table
func getRow(client *nosqldb.Client, err error, tableName string, colName string, Id int)(){
	key:=&types.MapValue{}
   key.Put(colName, Id)
   req:=&nosqldb.GetRequest{
         TableName: tableName,
         Key: key,
   }
   res, err:=client.Get(req)
   if err != nil {
      fmt.Printf("GetResults() failed: %v\n", err)
      return
   }
   if res.RowExists() {
      fmt.Printf("Got row: %v\n", res.ValueAsJSON())
   } else {
      fmt.Printf("The row does not exist.\n")
   }
}

Note :

Pour extraire des données d'une table enfant, spécifiez le nom complet de la table (parent_tablename.child_tablename) dans le paramètre TableName. Téléchargez le code complet TableJoins.go à partir des exemples pour comprendre comment extraire des données d'une table parent-enfant ici.

Utilisez l'API get pour extraire une seule rangée de données à l'aide de la clé primaire. Vous pouvez lire une seule rangée à l'aide de la méthode get. Cette méthode vous permet d'extraire un enregistrement en fonction de sa valeur de clé primaire. Pour plus de détails sur la méthode, voir la classe NoSQLClient.

Définissez la cohérence de l'opération de lecture à l'aide de l'énumération de cohérence. Vous pouvez définir la cohérence par défaut pour les opérations de lecture dans la configuration initiale utilisée pour créer une instance NoSQLClient à l'aide de la propriété de cohérence. Vous pouvez également la modifier pour une seule opération de lecture en définissant la propriété de cohérence dans l'argument GetOpt de la méthode get.

JavaScript : Téléchargez le code complet QueryData.js à partir des exemples ici.
//fetches single row with get API
async function getRow(handle,idVal) {
   try {
      const result = await handle.get(TABLE_NAME,{acct_Id: idVal });
      console.log('Got row:  %O', result.row);
   } catch(error) {
      console.error('  Error: ' + error.message);
   }
}
TypeScript : Vous pouvez également fournir un paramètre de type facultatif pour une rangée à get et à d'autres méthodes liées aux données. Le paramètre type permet au compilateur TypeScript de fournir des conseils sur le type pour la méthode GetResult retournée, ainsi que de vérifier le type de la clé transmise. Lors de la vérification du type, le compilateur vérifie si le champ de clé primaire fait partie du schéma de table et si le type du champ de clé primaire est l'un des types autorisés, c'est-à-dire chaîne, numérique, date ou booléen. Téléchargez le code complet QueryData.ts dans les exemples ici.
interface StreamInt {
   acct_Id: Integer;
   profile_name: String;
   account_expiry: TIMESTAMP;
   acct_data: JSON;
}
/*fetches single row with get API*/
async function getRow(handle: NoSQLClient,idVal: Integer) {
   try {
      const result = await handle.get<StreamInt>(TABLE_NAME,{acct_Id: idVal });
      console.log('Got row:  %O', result.row);
   } catch(error) {
      console.error('  Error: ' + error.message);
   }
}

Note :

Pour extraire des données d'une table enfant, spécifiez le nom complet de la table (parent_tablename.child_tablename) dans le paramètre TABLE_NAME. Téléchargez le code JavaScript complet TableJoins.js ici et le code TypeScript complet TableJoins.ts ici pour comprendre comment extraire des données d'une table parent-enfant.

Utilisez l'API GET pour extraire une seule rangée de données à l'aide de la clé primaire. Vous pouvez lire une seule rangée à l'aide de la méthode GetAsync. Cette méthode vous permet d'extraire une ligne en fonction de sa valeur de clé primaire. Les noms de champ doivent être identiques aux noms de colonne de clé primaire de la table. Vous pouvez également transmettre des options en tant que GetOptions.

Vous pouvez définir la cohérence d'une opération de lecture à l'aide de l'énumération de cohérence. La cohérence par défaut pour les opérations de lecture peut être définie comme propriété de cohérence de NoSQLConfig. Vous pouvez également modifier la cohérence d'une opération Get unique à l'aide de la propriété de cohérence de GetOptions. La méthode GetAsync retourne Task<GetResult<RecordValue>>. L'instance GetResult contient la rangée retournée, la version de la rangée et d'autres informations. Si la rangée avec la clé primaire fournie n'existe pas dans la table, les valeurs des propriétés Rangée et Version seront nulles.

Téléchargez le code complet QueryData.cs dans les exemples ici.
private static async Task getRow(NoSQLClient client,String colName, int Id){
   var result = await client.GetAsync(TableName,
         new MapValue
         {
             [colName] =Id
         });
   if (result.Row != null){
      Console.WriteLine("Got row: {0}\n", result.Row.ToJsonString());
   }
   else {
      Console.WriteLine("Row with primaryKey {0} doesn't exist",colName);
   }
}

Note :

Pour extraire des données d'une table enfant, spécifiez le nom complet de la table (parent_tablename.child_tablename) dans le paramètre TableName. Téléchargez le code complet TableJoins.cs à partir des exemples pour comprendre comment extraire des données d'une table parent-enfant ici.