IDBObjectStore.clear()

Cet article nécessite une relecture technique. Voici comment vous pouvez aider.

Cet article nécessite une relecture rédactionnelle. Voici comment vous pouvez aider.

La méthode clear() de l'interface IDBObjectStore fait une requête pour vider le magasin d'objet relié.

Vider un magasin d'objet consiste à supprimer tous les enregistrements et les entrées des index de ce magasin d'objet.

Note: La méthode clear() ne remet pas à zero le compteur du génerateur de clé s'il y en à un.

Note : This feature is available in Web Workers.

Syntaxe

var request = objectStore.clear();

Renvoie

Une requête.

Exceptions

ReadOnlyError
Cette exception est levé si la transaction associé à cette requête est en mode lecture seule.
TransactionInactiveError
Cette exception est levé si la transaction de l'accès au magasin d’objet est inactive.

Exemple

Dans le code suivant, on ouvre une connexion à la base de donnée. Sur cette connexion on démarre une transaction en lecture/écriture pour avoir un accès au magasin d'objet "toDoList" et le vider

La méthode clear() de l'accès au magasin d'objet fait une requête pour vider le magasin d'objet toDoList.

//Connexion à la base de données
var DBOpenRequest = window.indexedDB.open("toDoList", 4);

DBOpenRequest.onsuccess = function(event) {
	note.innerHTML += '<li>Connexion établie.</li>'; 
  
	//Affecte la connexion à la variable db. 
	db = DBOpenRequest.result; 
  
  // Exécutez la fonction clearData () pour vider les données dans le magasin d'objet
  clearData();
};

function clearData() {
  // ouvre une transaction de lecture / écriture  prête pour le nettoyage
  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>L\'erreur: "' + transaction.error +'" c\'est produite échec de la transaction.'</li>
  }; 
  
  // ouvre l'accès au un magasin "toDoList" de la transaction 
  var objectStore = transaction.objectStore("toDoList"); 
  
  // Vide le magasin d'objet 
  var objectStoreRequest = objectStore.clear(); 
  
  objectStoreRequest.onsuccess = function(event) { 
  // rapporte le succès du nettoyage 
  note.innerHTML += '<li>Enregistrements effacées.</li>'; 
  }; 
};

Pour un exemple de travail complet, voir notre To-do Notifications app (view example live).

Spécification

Spécification Statut Commentaire
Indexed Database API
La définition de 'clear()' dans cette spécification.
Recommendation  

Compatibilité avec les navigateurs

Fonctionnalité Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Support basique 23webkit
24
10 moz
16.0 (16.0)
10, en partie 15 7.1
Disponible dans workers (Oui) 37.0 (37.0) ? (Oui) ?
Fonctionnalité Android Firefox Mobile (Gecko) Firefox OS IE Phone Opera Mobile Safari Mobile
Support basique 4.4 22.0 (22.0) 1.0.1 10 22 8
Disponible dans workers (Oui) 37.0 (37.0) (Oui) ? (Oui) ?

Voir aussi

Étiquettes et contributeurs liés au document

 Contributeurs à cette page : gadgino
 Dernière mise à jour par : gadgino,