ObjectLevelDB
evelDB ist ein in fibjs integriertes Datenbankbetriebsobjekt, das zum Erstellen und Verwalten von Wörterbuchobjekten in Form von Schlüssel-Wert-Paaren verwendet wird. Mithilfe von LevelDB-Objekten können Sie auf einfache Weise die Datenspeicherung, Abfrage, Löschung, Aufzählung und andere Vorgänge von Schlüssel-Wert-Paaren implementieren. Es basiert auf Googles Open-Source-LevelDB und bietet die Vorteile von Effizienz, Zuverlässigkeit und Skalierbarkeit.
Das Erstellen eines LevelDB-Objekts ist sehr einfach. Passen Sie es einfach andb.openLevelDBDie Methode erstellt ein Datenbankobjekt mit einem angegebenen Namen. Zum Beispiel:
1
2var db = require("db");
var test = db.openLevelDB("test.db");
In,dbist das Datenbankbetriebsobjekt von fibjs, die openLevelDB-Methode wird zum Öffnen der leveldb-Datenbank verwendet, test.db ist der Datenbankname und die Funktion kehrt zurücktestDas Objekt ist das Objekt, das die Datenbank betreibt.
Zu den Hauptoperationen, die von LevelDB-Objekten unterstützt werden, gehören:
- set(key, value): Legen Sie Schlüsselwertdaten fest. Wenn der Schlüsselwert nicht vorhanden ist, fügen Sie neue Daten ein.
- get(key): Fragen Sie den Wert des angegebenen Schlüsselwerts ab.
- has(key): Bestimmen Sie, ob der angegebene Schlüsselwert vorhanden ist.
- Remove(key): Alle Werte des angegebenen Schlüsselwerts löschen.
- forEach(func): Alle Schlüssel-Wert-Paare in der Datenbank aufzählen.
- between(from, to, func): Zählen Sie Schlüssel-Wert-Paare in der Datenbank mit Schlüsselwerten zwischen von und bis auf.
- toJSON(key): Gibt die JSON-Formatdarstellung des Objekts zurück und gibt im Allgemeinen einen Satz lesbarer Attribute zurück, die vom Objekt definiert werden.
- begin(): Starten Sie eine Transaktion in der aktuellen Datenbank.
- commit(): Übermitteln Sie die aktuelle Transaktion.
- close(): Schließt die aktuelle Datenbankverbindung oder Transaktion.
Zum Beispiel:
1
2
3
4
5
6
7
8
9
10
11
12
13var 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();
Das Obige sind die grundlegende Verwendung und Beispiele von LevelDB-Objekten, mit denen Schlüssel-Wert-Paardaten bequem und flexibel verarbeitet werden können. In praktischen Anwendungen kann es in Speicher-, Caching-, Protokollierungs- und anderen Szenarien verwendet werden, um die Effizienz beim Lesen und Schreiben von Daten zu verbessern, die Programmlogik zu vereinfachen, die Entwicklungskomplexität zu verringern usw.
Erbschaftsverhältnis
Mitgliedsfunktion
has
Überprüfen Sie, ob Daten mit dem angegebenen Schlüsselwert in der Datenbank vorhanden sind
1Boolean LevelDB.has(Buffer key) async;
Aufrufparameter:
- key:BufferGeben Sie den zu prüfenden Schlüsselwert an
Rückgabeergebnisse:
- Boolean, gibt zurück, ob der Schlüsselwert existiert
get
Fragen Sie den Wert des angegebenen Schlüsselwerts ab
1Buffer LevelDB.get(Buffer key) async;
Aufrufparameter:
- key:BufferGeben Sie den Schlüsselwert an, der abgefragt werden soll
Rückgabeergebnisse:
- BufferGibt den Wert zurück, der dem Schlüsselwert entspricht. Wenn dieser nicht vorhanden ist, wird Null zurückgegeben
mget
Fragen Sie den Wert einer Reihe angegebener Schlüsselwerte ab
1NArray LevelDB.mget(Array keys);
Aufrufparameter:
- keys: Array, gibt das abzufragende Schlüsselwert-Array an
Rückgabeergebnisse:
- NArray, gibt ein Array zurück, das Schlüsselwerte enthält
set
Legen Sie Schlüsselwertdaten fest. Wenn der Schlüsselwert nicht vorhanden ist, fügen Sie neue Daten ein.
1
2LevelDB.set(Buffer key,
Buffer value) async;
Aufrufparameter:
- key:BufferGeben Sie den festzulegenden Schlüsselwert an
- value:BufferGeben Sie die festzulegenden Daten an
mset
Legen Sie einen Satz Schlüsselwertdaten fest. Wenn der Schlüsselwert nicht vorhanden ist, fügen Sie neue Daten ein.
1LevelDB.mset(Object map);
Aufrufparameter:
- map: Objekt, gibt das festzulegende Schlüsselwert-Datenwörterbuch an
mremove
Löschen Sie eine Reihe von Werten für einen angegebenen Schlüssel
1LevelDB.mremove(Array keys);
Aufrufparameter:
- keys: Array, gibt das zu löschende Schlüsselwert-Array an
remove
Löschen Sie alle Werte des angegebenen Schlüssels
1LevelDB.remove(Buffer key) async;
Aufrufparameter:
- key:BufferGeben Sie den zu löschenden Schlüsselwert an
firstKey
Fragen Sie den kleinsten Schlüssel ab
1Buffer LevelDB.firstKey() async;
Rückgabeergebnisse:
- Buffer, gibt den kleinsten Schlüssel zurück
lastKey
Fragen Sie den größten Schlüssel ab
1Buffer LevelDB.lastKey() async;
Rückgabeergebnisse:
- Buffer, gibt den größten Schlüssel zurück
forEach
Listen Sie alle Schlüssel-Wert-Paare in der Datenbank auf
1LevelDB.forEach(Function func);
Aufrufparameter:
- func: Funktion, Aufzählungsrückruffunktion
Die Callback-Funktion hat zwei Parameter (Wert, Schlüssel)
1
2
3
4
5
6var db = require("db");
var test = new db.openLevelDB("test.db");
test.forEach(function(value, key) {
...
});
Listen Sie alle Schlüssel-Wert-Paare in der Datenbank auf
1
2LevelDB.forEach(Buffer from,
Function func);
Aufrufparameter:
- from:Buffer, der minimale Schlüsselwert der Aufzählung. Dieser Schlüsselwert wird während der Aufzählung einbezogen
- func: Funktion, Aufzählungsrückruffunktion
Die Callback-Funktion hat zwei Parameter (Wert, Schlüssel)
1
2
3
4
5
6var db = require("db");
var test = new db.openLevelDB("test.db");
test.forEach("aaa", "bbb", function(value, key) {
...
});
Listen Sie alle Schlüssel-Wert-Paare in der Datenbank auf
1
2
3LevelDB.forEach(Buffer from,
Buffer to,
Function func);
Aufrufparameter:
- from:Buffer, der minimale Schlüsselwert der Aufzählung. Dieser Schlüsselwert wird während der Aufzählung einbezogen
- to:Buffer, der maximale Schlüsselwert der Aufzählung, dieser Schlüsselwert ist nicht in der Aufzählung enthalten
- func: Funktion, Aufzählungsrückruffunktion
Die Callback-Funktion hat zwei Parameter (Wert, Schlüssel)
1
2
3
4
5
6var db = require("db");
var test = new db.openLevelDB("test.db");
test.forEach("aaa", "bbb", function(value, key) {
...
});
Listen Sie alle Schlüssel-Wert-Paare in der Datenbank auf
1
2LevelDB.forEach(Object opt,
Function func);
Aufrufparameter:
- opt: Objekt, Aufzählungsoptionen, unterstützt Überspringen, Begrenzen, Umkehren
- func: Funktion, Aufzählungsrückruffunktion
Die Callback-Funktion hat zwei Parameter (Wert, Schlüssel)
1
2
3
4
5
6var db = require("db");
var test = new db.openLevelDB("test.db");
test.forEach(function(value, key) {
...
});
Listen Sie alle Schlüssel-Wert-Paare in der Datenbank auf
1
2
3LevelDB.forEach(Buffer from,
Object opt,
Function func);
Aufrufparameter:
- from:Buffer, der minimale Schlüsselwert der Aufzählung. Dieser Schlüsselwert wird während der Aufzählung einbezogen
- opt: Objekt, Aufzählungsoptionen, unterstützt Überspringen, Begrenzen, Umkehren
- func: Funktion, Aufzählungsrückruffunktion
Die Callback-Funktion hat zwei Parameter (Wert, Schlüssel)
1
2
3
4
5
6var db = require("db");
var test = new db.openLevelDB("test.db");
test.forEach("aaa", "bbb", function(value, key) {
...
});
Listen Sie alle Schlüssel-Wert-Paare in der Datenbank auf
1
2
3
4LevelDB.forEach(Buffer from,
Buffer to,
Object opt,
Function func);
Aufrufparameter:
- from:Buffer, der minimale Schlüsselwert der Aufzählung. Dieser Schlüsselwert wird während der Aufzählung einbezogen
- to:Buffer, der maximale Schlüsselwert der Aufzählung, dieser Schlüsselwert ist nicht in der Aufzählung enthalten
- opt: Objekt, Aufzählungsoptionen, unterstützt Überspringen, Begrenzen, Umkehren
- func: Funktion, Aufzählungsrückruffunktion
Die Callback-Funktion hat zwei Parameter (Wert, Schlüssel)
1
2
3
4
5
6var db = require("db");
var test = new db.openLevelDB("test.db");
test.forEach("aaa", "bbb", function(value, key) {
...
});
begin
Starten Sie eine Transaktion in der aktuellen Datenbank
1LevelDB LevelDB.begin();
Rückgabeergebnisse:
- LevelDB, gibt ein offenes Transaktionsobjekt zurück
commit
Senden Sie die aktuelle Transaktion
1LevelDB.commit();
close
Schließen Sie die aktuelle Datenbankverbindung oder Transaktion
1LevelDB.close() async;
toString
Gibt die Zeichenfolgendarstellung des Objekts zurück. Im Allgemeinen wird „[Native Object]“ zurückgegeben. Das Objekt kann gemäß seinen eigenen Eigenschaften neu implementiert werden.
1String LevelDB.toString();
Rückgabeergebnisse:
- String, gibt die Zeichenfolgendarstellung des Objekts zurück
toJSON
Gibt eine Darstellung des Objekts im JSON-Format zurück und gibt im Allgemeinen eine Sammlung lesbarer Eigenschaften zurück, die vom Objekt definiert werden.
1Value LevelDB.toJSON(String key = "");
Aufrufparameter:
- key: Zeichenfolge, nicht verwendet
Rückgabeergebnisse:
- Value, gibt einen Wert zurück, der JSON serialisierbar enthält