Uso de la API Get para recuperar datos

Utilice la API GetRequest para recuperar una única fila de datos mediante la clave primaria.

Por defecto, todas las Operaciones de Lectura son finalmente coherentes. Este tipo de lectura es menos costosa que las que utilizan consistencia absoluta. Puede cambiar la consistencia por defecto para una instancia de NoSQLHandle mediante el método setConsistency() en la clase Consistency.

La clase GetRequest proporciona una forma sencilla y potente de leer datos, mientras que la consulta se puede utilizar para peticiones de lectura más complejas. Para leer datos de una tabla, especifique la tabla de destinos y las claves de destinos utilizando la clase GetRequest y utilice NoSQLHandle.get() para ejecutar la solicitud. El resultado de la operación está disponible en GetResult. Puede cambiar la coherencia por defecto del método NoSQLHandle mediante los métodos NoSQLHandleConfig.setConsistency(oracle.nosql.driver.Consistency) y GetRequest.setConsistency().

Descargue el código completo QueryData.java de los ejemplos aquí.

//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");
   }
}

Nota: Para recuperar datos de una tabla secundaria, especifique el nombre completo de la tabla (parent_tablename.child_tablename) en el método setTableName. Descargue el código completo TableJoins.java de los ejemplos para comprender cómo recuperar datos de una tabla principal-secundaria aquí.

Utilice la API GetRequest para recuperar una única fila de datos mediante la clave primaria. Puede leer filas únicas mediante el método borneo.NoSQLHandle.get(). Este método permite recuperar un registro basado en su valor en clave primaria. La clase borneo.GetRequest se utiliza para operaciones get simples. Contiene el valor de clave primaria para la fila de destino y devuelve una instancia de borneo.GetResult. Puede cambiar la consistencia por defecto para un borneo.NoSQLHandle mediante borneo.NoSQLHandleConfig.set_consistency() antes de crear el identificador. Se puede cambiar para una sola solicitud mediante borneo.GetRequest.set_consistency().

Descargue el código completo QueryData.py de los ejemplos aquí.

# 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()))

Nota: Para recuperar datos de una tabla secundaria, especifique el nombre completo de la tabla (parent_tablename.child_tablename) en el método set_table_name. Descargue el código completo TableJoins.py de los ejemplos para comprender cómo recuperar datos de una tabla principal-secundaria aquí.

Utilice la API GetRequest para recuperar una única fila de datos mediante la clave primaria. Puede leer filas únicas mediante la función Client.Get. Esta función permite recuperar un registro basado en su valor de clave primaria. nosqldb.GetRequest se utiliza para operaciones get simples. Contiene el valor de clave primaria para la fila de destino y devuelve una instancia de nosqldb.GetResult. Si la operación get se realiza correctamente, se devuelve un valor GetResult.Version no nulo. Puede cambiar la consistencia por defecto para un nosqldb.RequestConfig mediante RequestConfig.Consistency antes de crear el cliente. Se puede cambiar para una sola solicitud mediante el campo GetRequest.Consistency.

Descargue el código completo QueryData.go de los ejemplos aquí.

//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")
   }
}

Nota: Para recuperar datos de una tabla secundaria, especifique el nombre completo de la tabla (parent_tablename.child_tablename) en el parámetro TableName. Descargue el código completo TableJoins.go de los ejemplos para comprender cómo recuperar datos de una tabla principal-secundaria aquí.

Utilice la API get para recuperar una única fila de datos mediante la clave primaria. Puede leer una sola fila con el método get. Este método permite recuperar un registro basado en su valor en clave primaria. Para obtener más información sobre el método, consulte la clase NoSQLClient.

Defina la consistencia de la operación de lectura mediante la enumeración de consistencia. Puede definir la consistencia por defecto para las operaciones de lectura en la configuración inicial que se utiliza para crear una instancia de NoSQLClient mediante la propiedad de consistencia. También puede cambiarlo para una sola operación de lectura definiendo la propiedad de consistencia en el argumento GetOpt del método get.

JavaScript: descargue el código completo QueryData.js de los ejemplos aquí.

//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: también puede proporcionar un parámetro type opcional para una fila a get y otros métodos relacionados con los datos. El parámetro type permite al compilador TypeScript proporcionar indicaciones type para el método GetResult devuelto, así como comprobar el tipo de la clave transferida. Al comprobar type, el compilador inspecciona si el campo de clave primaria forma parte del esquema de tabla y si el type del campo de clave primaria es uno de los tipos permitidos, es decir, cadena, numérico, fecha o booleano. Descargue el código completo QueryData.ts de los ejemplos aquí.

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);
   }
}

Nota: Para recuperar datos de una tabla secundaria, especifique el nombre completo de la tabla (parent_tablename.child_tablename) en el parámetro TABLE_NAME. Descargue el código JavaScript completo TableJoins.js aquí y el código TypeScript completo TableJoins.ts aquí para obtener información sobre cómo recuperar datos de una tabla principal-secundaria.

Utilice la API GET para recuperar una única fila de datos mediante la clave primaria. Puede leer una sola fila con el método GetAsync. Este método permite recuperar una fila en función de su valor de clave primaria. Los nombres de campo deben ser los mismos que los nombres de columna de clave primaria de la tabla. También puede transferir las opciones como GetOptions.

Puede definir la consistencia de una operación de lectura mediante la enumeración de consistencia. La consistencia por defecto para las operaciones de lectura se puede definir como propiedad de consistencia de NoSQLConfig. También puede cambiar la consistencia de una sola operación Get mediante la propiedad Consistency de GetOptions. El método GetAsync devuelve Task<GetResult<RecordValue>>. La instancia GetResult contiene la fila devuelta, la versión de la fila y otra información. Si la fila con la clave primaria proporcionada no existe en la tabla, los valores de las propiedades Fila y Versión serán nulos.

Descargue el código completo QueryData.cs de los ejemplos aquí.

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);
   }
}

Nota: Para recuperar datos de una tabla secundaria, especifique el nombre completo de la tabla (parent_tablename.child_tablename) en el parámetro TableName. Descargue el código completo TableJoins.cs de los ejemplos para comprender cómo recuperar datos de una tabla principal-secundaria aquí.