← 返回首页
IDBTransaction.db - Les API Web | MDN

Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in English Always switch to English

IDBTransaction.db

Baseline Large disponibilité

Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis juillet 2015.

La propriété db de l'interface IDBTransaction renvoie la connexion à la base de donnée associée à la transaction.

Note : Cette fonctionnalité est disponible via les Web Workers.

Dans cet article

Syntaxe

js
var myDatabase = transaction.db;

Valeur

Une connexion à la base de données sous la forme d'un objet IDBDatabase.

Exemples

Dans le fragment de code suivant, on ouvre une connexion à la base de donnée. Sur cette connexion on démarre une transaction en lecture/écriture pour accéder au magasin d'objet "toDoList" et y ajouter un enregistrement. Notez également les gestionnaires d'événements oncomplete et onerror de la transaction qui affichent sur la page le résultat de la transaction.

À la fin, la méthode db sert à renvoyer la connexion à la base de données associée à la transaction.

js
//Connexion à la base de données var DBOpenRequest = window.indexedDB.open("toDoList", 4); DBOpenRequest.onsuccess = function (event) { note.innerHTML += "Connexion établie."; //Affecter la connexion à la variable db. db = DBOpenRequest.result; // Exécuter la fonction addData () pour emmagasiner // les données dans la base addData(); }; function addData() { //Un nouvel objet prêt à être emmagasiné newItem = [ { taskTitle: "Walk dog", hours: 19, minutes: 30, day: 24, month: "December", year: 2013, notified: "no", }, ]; // Ouvrir une transaction de lecture / écriture // pour permettre le traitement des données sur la connexion var transaction = db.transaction(["toDoList"], "readwrite"); // En cas de succès de l'ouverture de la transaction transaction.oncomplete = function (event) { note.innerHTML += "<li>Transaction complété : modification de la base de données terminée.</li>"; }; // En cas d'échec de l'ouverture de la transaction transaction.onerror = function (event) { note.innerHTML += "<li>Erreur transaction non ouverte, doublons interdits.</li>"; }; // Ouvrir l'accès au un magasin "toDoList" de la transaction var objectStore = transaction.objectStore("toDoList"); // Ajouter un enregistrement var objectStoreRequest = objectStore.add(newItem[0]); objectStoreRequest.onsuccess = function (event) { // Signaler l'ajout de l'enregistrement note.innerHTML += "<li>Enregistrement ajouté.</li>"; }; // Renvoyer la connexion à la base de donnée //associée à cette transaction. transaction.db; }

Note : Pour un exemple fonctionnel complet, voir notre application To-do (exemple).

Spécifications

Spécification
Indexed Database API 3.0
# ref-for-dom-idbtransaction-db①

Compatibilité des navigateurs

Activez JavaScript pour afficher ce tableau de compatibilité des navigateurs.

Voir aussi