IDBObjectStore.get()
La méthode get()
de l'interface IDBObjectStore
fait une requête
pour renvoyer la valeur d'un enregistrement du magasin d'objet relié
.
undefined
null
undefined
undefined
null
Note: Cette fonctionnalité est disponible via les Web Workers
Syntaxe
var request = objectStore.get(cle);
Paramètre
cle
-
la clé ou l'
intervalle de clé
de l'enregistrement dont on cherche la valeur.
Renvoie
Exceptions
TransactionInactiveError
-
Cette
exception
est levé si latransaction
dont dépend cetaccès
au magasin d'objet est inactive. DataError
-
Cette
exception
est levé si la clé ou l'intervalle de clé
est invalide. InvalidStateError
-
Cette
exception
est levé si le magasin d'objet à été supprimé.
Exemple
Dans le code suivant , on ouvre une transaction
sur la connexion
à la base de données, pour avoir l'accès
au magasin d'objet dans lequel on veut retrouver la valeur d'un enregistrement.
La méthode get()
sert à retrouver la valeur de l'enregistrement dont la clé est Walk dog
dans le magasin d'objets toDoList
.
// ouvre la connexion à la base de données
var DBOpenRequest = window.indexedDB.open("toDoList", 4);
// Gère l'ouverture de la connexion
DBOpenRequest.onsuccess = function() {
note.innerHTML += '<li>Database initialised.</li>';
// enregistre la connexion dans la variable db
db = DBOpenRequest.result;
// exécute la fonction deleteData()
deleteData();
};
function deleteData() {
// ouvre un transaction en mode lecture/écriture pour effectuer la suppression
var transaction = db.transaction(["toDoList"], "readwrite");
// affiche le succès de la transaction.
transaction.oncomplete = function() {
note.innerHTML += '<li>Transaction effectuée: fin de la modification de la base de données.</li>';
};
// affiche la cause de l’échec de la transaction.
transaction.onerror = function() {
note.innerHTML += '<li>Échec de la transaction: ' + transaction.error + ' la base de données n\'a pas été modifié</li>';
};
// ouvre un accès au magasin d'objet toDoList
var objectStore = transaction.objectStore("toDoList");
// Retrouve l'enregistrement dont la clé est Walk dog
var objectStoreRequest = objectStore.get("Walk dog");
objectStoreRequest.onsuccess = function() {
//Affiche le succès de la requête
note.innerHTML += '<li>Enregistrement retrouvé.</li>';
//affecte la valeur de l'enregistrement à la variable
var myRecord = objectStoreRequest.result;
};
};
Note : Pour un exemple de travail complet, voir notre To-do Notifications app (view example live).
Spécifications
Spécification | Statut | Commentaire |
---|---|---|
Indexed Database API 2.0 La définition de 'get()' dans cette spécification. |
Recommendation |
Compatibilité des navigateurs
BCD tables only load in the browser