IDBObjectStore: getAllRecords() Methode
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Die getAllRecords()-Methode der IDBObjectStore
Schnittstelle ruft alle Datensätze (einschließlich Primärschlüssel und Werte) aus dem Objektspeicher ab.
getAllRecords() kombiniert effektiv die Funktionalitäten von getAllKeys() und getAll(), indem sowohl Primärschlüssel als auch Werte gleichzeitig aufgezählt werden. Diese kombinierte Operation ermöglicht es, bestimmte Datenabrufmuster deutlich schneller auszuführen als Alternativen wie etwa die Iteration mit Cursor.
Syntax
getAllRecords()
getAllRecords(options)
Parameter
Ein Optionsobjekt, dessen Eigenschaften folgende sein können:
queryOptional-
Ein Schlüssel oder ein
IDBKeyRange, der die abzurufenden Datensätze identifiziert. Wenn dieser Wertnulloder nicht angegeben ist, 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 bestimmt, in der sie zurückgegeben werden. Mögliche Werte sind:
next-
Die Datensätze werden vom Anfang in aufsteigender Schlüsselfolge durchlaufen. Dies ist der Standardwert.
nextunique-
Die Datensätze werden vom Anfang in aufsteigender Schlüsselfolge durchlaufen. Dies liefert die gleichen Datensätze wie
next, da doppelte Schlüssel inIDBObjectStores nicht erlaubt sind. prev-
Die Datensätze werden vom Ende in absteigender Schlüsselfolge durchlaufen.
prevunique-
Die Datensätze werden vom Ende in absteigender Schlüsselfolge durchlaufen. Dies liefert die gleichen Datensätze wie
prev, da doppelte Schlüssel inIDBObjectStores nicht erlaubt sind.
Rückgabewert
Ein IDBRequest-Objekt, auf dem nachfolgende Ereignisse im Zusammenhang mit dieser Operation ausgelöst werden.
Wenn die Operation erfolgreich ist, ist der Wert der result-Eigenschaft der Anfrage ein Array von Objekten, die alle Datensätze darstellen, die der angegebenen Abfrage entsprechen, bis zu der durch count (falls angegeben) spezifizierten Anzahl.
Jedes Objekt enthält die folgenden Eigenschaften:
key-
Ein Wert, der den Schlüssel des Datensatzes darstellt.
primaryKey-
Der Schlüssel des Datensatzes; identisch mit der
key-Eigenschaft. value-
Ein Wert, der den Wert des Datensatzes darstellt.
Ausnahmen
Diese Methode kann eine DOMException der folgenden Typen auslösen:
InvalidStateErrorDOMException-
Wird ausgelöst, wenn der
IDBObjectStoregelöscht oder entfernt wurde. TransactionInactiveErrorDOMException-
Wird ausgelöst, wenn die Transaktion dieses
IDBObjectStoreinaktiv ist. TypeErrorDOMException-
Wird ausgelöst, wenn der
count-Parameter nicht zwischen0und2^32 - 1liegt, einschließlich.
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()- IndexedDB verwenden
- Transaktionen starten:
IDBDatabase - Transaktionen verwenden:
IDBTransaction - Einstellen eines Schlüsselbereichs:
IDBKeyRange - Abrufen und Ändern Ihrer Daten:
IDBObjectStore - Verwenden von Cursors:
IDBCursor - Schnellere IndexedDB-Lesevorgänge mit einem getAllRecords()-Beispiel von Microsoft, 2025