Objet objet intégré

ObjectLevelDB

evelDB est un objet d'opération de base de données intégré de fibjs, qui est utilisé pour créer et gérer des objets de dictionnaire sous la forme de paires clé-valeur. À l'aide des objets LevelDB, vous pouvez facilement implémenter le stockage de données, les requêtes, la suppression, l'énumération et d'autres opérations par paire clé-valeur. Il est implémenté sur la base du LevelDB open source de Google et présente les avantages d'efficacité, de fiabilité et d'évolutivité.

Créer un objet LevelDB est très simple, il suffit de passerdb.openLevelDBLa méthode crée un objet de base de données avec un nom spécifié. Par exemple:

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

dans,dbest l'objet d'opération de base de données de fibjs, la méthode openLevelDB est utilisée pour ouvrir la base de données leveldb, test.db est le nom de la base de données et la fonction renvoietestL'objet est l'objet qui exploite la base de données.

Les principales opérations prises en charge par les objets LevelDB incluent :

  • set(key, value) : Définissez une donnée de valeur clé. Si la valeur clé n'existe pas, insérez de nouvelles données.
  • get(key) : interrogez la valeur de la valeur de clé spécifiée.
  • has(key) : détermine si la valeur de clé spécifiée existe.
  • Remove(key) : supprime toutes les valeurs de la valeur clé spécifiée.
  • forEach(func) : Énumérez toutes les paires clé-valeur de la base de données.
  • between(from, to, func) : Énumérez les paires clé-valeur dans la base de données avec les valeurs clés entre from et to.
  • toJSON(key) : renvoie la représentation au format JSON de l'objet, renvoyant généralement un ensemble d'attributs lisibles définis par l'objet.
  • start() : démarre une transaction sur la base de données actuelle.
  • commit() : Soumet la transaction en cours.
  • close() : ferme la connexion ou la transaction en cours à la base de données.

Par exemple:

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

Ce qui précède présente l'utilisation de base et des exemples d'objets LevelDB, qui peuvent exploiter de manière pratique et flexible les données de paires clé-valeur. Dans des applications pratiques, il peut être utilisé dans le stockage, la mise en cache, la journalisation et d'autres scénarios pour améliorer l'efficacité de la lecture et de l'écriture des données, simplifier la logique du programme, réduire la complexité du développement, etc.

relation d'héritage

fonction membre

has

Vérifiez si les données avec la valeur de clé spécifiée existent dans la base de données

1
Boolean LevelDB.has(Buffer key) async;

Paramètres d'appel :

  • key:Buffer, spécifiez la valeur clé à vérifier

Résultats de retour :

  • Boolean, renvoie si la valeur clé existe

get

Interroger la valeur de la valeur de clé spécifiée

1
Buffer LevelDB.get(Buffer key) async;

Paramètres d'appel :

  • key:Buffer, spécifiez la valeur clé à interroger

Résultats de retour :

  • Buffer, renvoie la valeur correspondant à la valeur clé, si elle n'existe pas, renvoie null

mget

Interroger la valeur d'un ensemble de valeurs de clé spécifiées

1
NArray LevelDB.mget(Array keys);

Paramètres d'appel :

  • keys: Array, spécifie le tableau de valeurs clés à interroger

Résultats de retour :

  • NArray, renvoie un tableau contenant des valeurs clés

set

Définir une donnée de valeur clé. Si la valeur clé n'existe pas, insérez de nouvelles données.

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

Paramètres d'appel :

  • key:Buffer, spécifiez la valeur clé à définir
  • value:Buffer, précisez les données à paramétrer

mset

Définissez un ensemble de données de valeur clé. Si la valeur clé n'existe pas, insérez de nouvelles données.

1
LevelDB.mset(Object map);

Paramètres d'appel :

  • map: Objet, spécifie le dictionnaire de données clé-valeur à définir

mremove

Supprimer un ensemble de valeurs pour une clé spécifiée

1
LevelDB.mremove(Array keys);

Paramètres d'appel :

  • keys: Array, spécifie le tableau de valeurs clés à supprimer

remove

Supprimer toutes les valeurs de la clé spécifiée

1
LevelDB.remove(Buffer key) async;

Paramètres d'appel :

  • key:Buffer, spécifiez la valeur clé à supprimer

firstKey

Interroger la plus petite clé

1
Buffer LevelDB.firstKey() async;

Résultats de retour :

  • Buffer, renvoie la plus petite clé

lastKey

Interroger la plus grande clé

1
Buffer LevelDB.lastKey() async;

Résultats de retour :

  • Buffer, renvoie la plus grande clé

forEach

Énumérer toutes les paires clé-valeur dans la base de données

1
LevelDB.forEach(Function func);

Paramètres d'appel :

  • func: Fonction, fonction de rappel d'énumération

La fonction de rappel a deux paramètres (valeur, clé)

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

Énumérer toutes les paires clé-valeur dans la base de données

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

Paramètres d'appel :

  • from:Buffer, la valeur clé minimale de l'énumération, cette valeur clé est incluse lors de l'énumération
  • func: Fonction, fonction de rappel d'énumération

La fonction de rappel a deux paramètres (valeur, clé)

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

Énumérer toutes les paires clé-valeur dans la base de données

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

Paramètres d'appel :

  • from:Buffer, la valeur clé minimale de l'énumération, cette valeur clé est incluse lors de l'énumération
  • to:Buffer, la valeur clé maximale de l'énumération, cette valeur clé n'est pas incluse dans l'énumération
  • func: Fonction, fonction de rappel d'énumération

La fonction de rappel a deux paramètres (valeur, clé)

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

Énumérer toutes les paires clé-valeur dans la base de données

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

Paramètres d'appel :

  • opt: Objet, options d'énumération, prend en charge sauter, limiter, inverser
  • func: Fonction, fonction de rappel d'énumération

La fonction de rappel a deux paramètres (valeur, clé)

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

Énumérer toutes les paires clé-valeur dans la base de données

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

Paramètres d'appel :

  • from:Buffer, la valeur clé minimale de l'énumération, cette valeur clé est incluse lors de l'énumération
  • opt: Objet, options d'énumération, prend en charge sauter, limiter, inverser
  • func: Fonction, fonction de rappel d'énumération

La fonction de rappel a deux paramètres (valeur, clé)

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

Énumérer toutes les paires clé-valeur dans la base de données

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

Paramètres d'appel :

  • from:Buffer, la valeur clé minimale de l'énumération, cette valeur clé est incluse lors de l'énumération
  • to:Buffer, la valeur clé maximale de l'énumération, cette valeur clé n'est pas incluse dans l'énumération
  • opt: Objet, options d'énumération, prend en charge sauter, limiter, inverser
  • func: Fonction, fonction de rappel d'énumération

La fonction de rappel a deux paramètres (valeur, clé)

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

Démarrer une transaction sur la base de données actuelle

1
LevelDB LevelDB.begin();

Résultats de retour :

  • LevelDB, renvoie un objet de transaction ouvert

commit

Soumettre la transaction en cours

1
LevelDB.commit();

close

Fermer la connexion ou la transaction actuelle à la base de données

1
LevelDB.close() async;

toString

Renvoie la représentation sous forme de chaîne de l'objet. Généralement, "[Native Object]" est renvoyé. L'objet peut être réimplémenté en fonction de ses propres caractéristiques.

1
String LevelDB.toString();

Résultats de retour :

  • String, renvoie la représentation sous forme de chaîne de l'objet

toJSON

Renvoie une représentation au format JSON de l'objet, renvoyant généralement une collection de propriétés lisibles définies par l'objet.

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

Paramètres d'appel :

  • key: Chaîne, non utilisée

Résultats de retour :

  • Value, renvoie une valeur contenant du JSON sérialisable