Oggetto oggetto incorporato

ObjectLevelDB

evelDB è un oggetto operativo del database integrato di fibjs, che viene utilizzato per creare e gestire oggetti dizionario sotto forma di coppie chiave-valore. Utilizzando gli oggetti LevelDB, puoi facilmente implementare l'archiviazione dei dati, le query, l'eliminazione, l'enumerazione e altre operazioni di dati su coppie chiave-valore. È implementato sulla base del LevelDB open source di Google e presenta i vantaggi di efficienza, affidabilità e scalabilità.

Creare un oggetto LevelDB è molto semplice, basta passarlodb.openLevelDBIl metodo crea un oggetto di database con un nome specificato. Per esempio:

1 2
var db = require("db"); var test = db.openLevelDB("test.db");

In,dbè l'oggetto dell'operazione del database di fibjs, il metodo openLevelDB viene utilizzato per aprire il database leveldb, test.db è il nome del database e la funzione restituiscetestL'oggetto è l'oggetto che gestisce il database.

Le principali operazioni supportate dagli oggetti LevelDB includono:

  • set(key, value): imposta i dati di un valore chiave. Se il valore chiave non esiste, inserisci nuovi dati.
  • get(key): interroga il valore del valore della chiave specificato.
  • has(key): determina se il valore della chiave specificato esiste.
  • rimuovi(chiave): elimina tutti i valori del valore chiave specificato.
  • forEach(func): enumera tutte le coppie chiave-valore nel database.
  • between(from, to, func): enumera le coppie chiave-valore nel database con valori chiave compresi tra da e a.
  • toJSON(key): restituisce la rappresentazione in formato JSON dell'oggetto, generalmente restituendo un insieme di attributi leggibili definiti dall'oggetto.
  • Begin(): avvia una transazione sul database corrente.
  • commit(): invia la transazione corrente.
  • close(): chiude la connessione o la transazione corrente al database.

Per esempio:

1 2 3 4 5 6 7 8 9 10 11 12 13
var db = require("db"); var test = db.openLevelDB("test.db"); test.set("test_key", "test_value"); var value = test.get("test_key"); console.log("test_key:", value.toString()); test.remove("test_key"); console.log("has test_key:", test.has("test_key")); test.close();

Quanto sopra rappresenta l'utilizzo di base e gli esempi degli oggetti LevelDB, che possono gestire in modo pratico e flessibile i dati delle coppie chiave-valore. Nelle applicazioni pratiche, può essere utilizzato nell'archiviazione, nella memorizzazione nella cache, nella registrazione e in altri scenari per migliorare l'efficienza di lettura e scrittura dei dati, semplificare la logica del programma, ridurre la complessità dello sviluppo, ecc.

rapporto ereditario

funzione membro

has

Controlla se nel database esistono dati con il valore chiave specificato

1
Boolean LevelDB.has(Buffer key) async;

Parametri di chiamata:

  • key:Buffer, specificare il valore della chiave da verificare

Risultati restituiti:

  • Boolean, restituisce se il valore della chiave esiste

get

Interrogare il valore del valore chiave specificato

1
Buffer LevelDB.get(Buffer key) async;

Parametri di chiamata:

  • key:Buffer, specificare il valore della chiave da interrogare

Risultati restituiti:

  • Buffer, restituisce il valore corrispondente al valore della chiave, se non esiste, restituisce null

mget

Interrogare il valore di un insieme di valori chiave specificati

1
NArray LevelDB.mget(Array keys);

Parametri di chiamata:

  • keys: Array, specifica l'array di valori chiave da interrogare

Risultati restituiti:

  • NArray, restituisce un array contenente valori chiave

set

Imposta i dati del valore chiave. Se il valore chiave non esiste, inserisci nuovi dati.

1 2
LevelDB.set(Buffer key, Buffer value) async;

Parametri di chiamata:

  • key:Buffer, specificare il valore della chiave da impostare
  • value:Buffer, specificare i dati da impostare

mset

Imposta un insieme di dati del valore-chiave. Se il valore della chiave non esiste, inserisci nuovi dati.

1
LevelDB.mset(Object map);

Parametri di chiamata:

  • map: Oggetto, specifica il dizionario dati chiave-valore da impostare

mremove

Elimina un insieme di valori per una chiave specificata

1
LevelDB.mremove(Array keys);

Parametri di chiamata:

  • keys: Array, specifica l'array di valori chiave da eliminare

remove

Elimina tutti i valori della chiave specificata

1
LevelDB.remove(Buffer key) async;

Parametri di chiamata:

  • key:Buffer, specificare il valore della chiave da eliminare

firstKey

Interroga la chiave più piccola

1
Buffer LevelDB.firstKey() async;

Risultati restituiti:

  • Buffer, restituisce la chiave più piccola

lastKey

Interroga la chiave più grande

1
Buffer LevelDB.lastKey() async;

Risultati restituiti:

  • Buffer, restituisce la chiave più grande

forEach

Enumerare tutte le coppie chiave-valore nel database

1
LevelDB.forEach(Function func);

Parametri di chiamata:

  • func: Funzione, funzione di callback di enumerazione

La funzione di callback ha due parametri, (valore, chiave)

1 2 3 4 5 6
var db = require("db"); var test = new db.openLevelDB("test.db"); test.forEach(function(value, key) { ... });

Enumerare tutte le coppie chiave-valore nel database

1 2
LevelDB.forEach(Buffer from, Function func);

Parametri di chiamata:

  • from:Buffer, il valore chiave minimo dell'enumerazione, questo valore chiave viene incluso durante l'enumerazione
  • func: Funzione, funzione di callback di enumerazione

La funzione di callback ha due parametri, (valore, chiave)

1 2 3 4 5 6
var db = require("db"); var test = new db.openLevelDB("test.db"); test.forEach("aaa", "bbb", function(value, key) { ... });

Enumerare tutte le coppie chiave-valore nel database

1 2 3
LevelDB.forEach(Buffer from, Buffer to, Function func);

Parametri di chiamata:

  • from:Buffer, il valore chiave minimo dell'enumerazione, questo valore chiave viene incluso durante l'enumerazione
  • to:Buffer, il valore di chiave massimo dell'enumerazione, questo valore di chiave non è incluso nell'enumerazione
  • func: Funzione, funzione di callback di enumerazione

La funzione di callback ha due parametri, (valore, chiave)

1 2 3 4 5 6
var db = require("db"); var test = new db.openLevelDB("test.db"); test.forEach("aaa", "bbb", function(value, key) { ... });

Enumerare tutte le coppie chiave-valore nel database

1 2
LevelDB.forEach(Object opt, Function func);

Parametri di chiamata:

  • opt: Oggetto, opzioni di enumerazione, supporta salta, limita, inverti
  • func: Funzione, funzione di callback di enumerazione

La funzione di callback ha due parametri, (valore, chiave)

1 2 3 4 5 6
var db = require("db"); var test = new db.openLevelDB("test.db"); test.forEach(function(value, key) { ... });

Enumerare tutte le coppie chiave-valore nel database

1 2 3
LevelDB.forEach(Buffer from, Object opt, Function func);

Parametri di chiamata:

  • from:Buffer, il valore chiave minimo dell'enumerazione, questo valore chiave viene incluso durante l'enumerazione
  • opt: Oggetto, opzioni di enumerazione, supporta salta, limita, inverti
  • func: Funzione, funzione di callback di enumerazione

La funzione di callback ha due parametri, (valore, chiave)

1 2 3 4 5 6
var db = require("db"); var test = new db.openLevelDB("test.db"); test.forEach("aaa", "bbb", function(value, key) { ... });

Enumerare tutte le coppie chiave-valore nel database

1 2 3 4
LevelDB.forEach(Buffer from, Buffer to, Object opt, Function func);

Parametri di chiamata:

  • from:Buffer, il valore chiave minimo dell'enumerazione, questo valore chiave viene incluso durante l'enumerazione
  • to:Buffer, il valore di chiave massimo dell'enumerazione, questo valore di chiave non è incluso nell'enumerazione
  • opt: Oggetto, opzioni di enumerazione, supporta salta, limita, inverti
  • func: Funzione, funzione di callback di enumerazione

La funzione di callback ha due parametri, (valore, chiave)

1 2 3 4 5 6
var db = require("db"); var test = new db.openLevelDB("test.db"); test.forEach("aaa", "bbb", function(value, key) { ... });

begin

Avvia una transazione sul database corrente

1
LevelDB LevelDB.begin();

Risultati restituiti:

  • LevelDB, restituisce un oggetto di transazione aperta

commit

Invia la transazione corrente

1
LevelDB.commit();

close

Chiude la connessione o transazione corrente al database

1
LevelDB.close() async;

toString

Restituisce la rappresentazione in formato stringa dell'oggetto. Generalmente viene restituito "[Oggetto nativo]". L'oggetto può essere reimplementato in base alle proprie caratteristiche.

1
String LevelDB.toString();

Risultati restituiti:

  • String, restituisce la rappresentazione di stringa dell'oggetto

toJSON

Restituisce una rappresentazione in formato JSON dell'oggetto, generalmente restituendo una raccolta di proprietà leggibili definite dall'oggetto.

1
Value LevelDB.toJSON(String key = "");

Parametri di chiamata:

  • key: Stringa, non utilizzata

Risultati restituiti:

  • Value, restituisce un valore contenente JSON serializzabile