IDBObjectStore: getAllRecords() Methode
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.
Die getAllRecords() Methode des IDBObjectStore
Interfaces ruft alle Datensätze (einschließlich Primärschlüssel und Werte) aus dem Objekt-Store ab.
getAllRecords() kombiniert effektiv die Funktionalitäten von getAllKeys() und getAll(), indem es gleichzeitig sowohl Primärschlüssel als auch Werte aufzählt. Diese kombinierte Operation ermöglicht es, bestimmte Datenabrufmuster erheblich schneller als Alternativen wie die Iteration mit Cursoren auszuführen.
Syntax
getAllRecords()
getAllRecords(options)
Parameter
Ein Optionsobjekt, dessen Eigenschaften Folgendes beinhalten können:
queryOptional-
Ein Schlüssel oder ein
IDBKeyRange, der die abzurufenden Datensätze identifiziert. Wenn dieser Wertnullist oder nicht angegeben wird, verwendet der Browser einen ungebundenen Schlüsselbereich. countOptional-
Die Anzahl der zurückzugebenden Datensätze. Wenn dieser Wert die Anzahl der Datensätze in der Abfrage übersteigt, ruft der Browser nur die abgefragten Datensätze ab. Wenn der Wert kleiner als
0oder größer als2^32 - 1ist, wird eineTypeError-Ausnahme ausgelöst. directionOptional-
Ein enumerierter Wert, der die Richtung angibt, in der die Datensätze durchlaufen werden, was wiederum die Reihenfolge definiert, in der sie zurückgegeben werden. Mögliche Werte sind:
next-
Die Datensätze werden vom Anfang aus in aufsteigender Schlüsselreihenfolge durchlaufen. Dies ist der Standardwert.
nextunique-
Die Datensätze werden vom Anfang aus in aufsteigender Schlüsselreihenfolge durchlaufen. Dies wird die gleichen Datensätze wie
nextliefern, da doppelte Schlüssel inIDBObjectStores nicht erlaubt sind. prev-
Die Datensätze werden vom Ende aus in absteigender Schlüsselreihenfolge durchlaufen.
prevunique-
Die Datensätze werden vom Ende aus in absteigender Schlüsselreihenfolge durchlaufen. Dies wird die gleichen Datensätze wie
prevliefern, da doppelte Schlüssel inIDBObjectStores nicht erlaubt sind.
Rückgabewert
Ein IDBRequest Objekt, bei dem nachfolgende Ereignisse im Zusammenhang mit dieser Operation ausgelöst werden.
Falls die Operation erfolgreich ist, ist der Wert der result Eigenschaft des Anforderungsobjekts ein Array von Objekten, die alle Datensätze darstellen, die zu der angegebenen Abfrage passen, bis zur Anzahl, die durch count (falls angegeben) spezifiziert wird.
Jedes Objekt enthält die folgenden Eigenschaften:
key-
Ein Wert, der den Schlüssel des Datensatzes repräsentiert.
primaryKey-
Der Schlüssel des Datensatzes; identisch mit der
key-Eigenschaft. value-
Ein Wert, der den Wert des Datensatzes repräsentiert.
Ausnahmen
Diese Methode kann eine DOMException der folgenden Typen auslösen:
InvalidStateErrorDOMException-
Wird ausgelöst, wenn das
IDBObjectStoregelöscht oder entfernt wurde. TransactionInactiveErrorDOMException-
Wird ausgelöst, wenn die Transaktion dieser
IDBObjectStoreinaktiv ist. TypeErrorDOMException-
Wird ausgelöst, wenn der
countParameter nicht zwischen0und2^32 - 1, inklusive, liegt.
Beispiele
const query = IDBKeyRange.lowerBound("myKey", true);
const objectStore = transaction.objectStore("contactsList");
const myRecords = (objectStore.getAllRecords({
query,
count: "100",
direction: "prev",
}).onsuccess = (event) => {
console.log("Records successfully retrieved");
});
Spezifikationen
| Specification |
|---|
| Indexed Database API 3.0> # dom-idbobjectstore-getallrecords> |
Browser-Kompatibilität
Loading…
Siehe auch
IDBObjectStore.getAll(),IDBObjectStore.getAllKeys()- Verwendung von IndexedDB
- Transaktionen starten:
IDBDatabase - Verwendung von Transaktionen:
IDBTransaction - Festlegung eines Schlüsselbereichs:
IDBKeyRange - Abrufen und Ändern Ihrer Daten:
IDBObjectStore - Verwendung von Cursoren:
IDBCursor - Schnellere IndexedDB-Lesevorgänge mit dem getAllRecords() Beispiel von Microsoft, 2025