[ Web Proxy ]
URL:
Viewing: https://developer.mozilla.org/fr/docs/Web/API/IDBCursor [Back]  [Original]

IDBCursor - 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

IDBCursor

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.

L'interface IDBCursor de l' API IndexedDB reprsente un curseur pour traverser ou itrer sur plusieurs enregistrements dans une base de donnes.

Le curseur possde une source qui indique l'index ou le magasin d'objets sur lequel il itre. Il est dcrit par une position dans cet intervalle et par une direction dans laquelle il se dplace : dans l'ordre des cls d'enregistrement suivant le sens donn au curseur (montant ou descendant). Le curseur permet une application de traiter de faon asynchrone tous les enregistrements de sa plage.

On peut avoir autant de curseurs qu'on souhaite en mme temps. Ce sera toujours le mme objet IDBCursor qui reprsentera un curseur donn. Les oprations sont effectues l'intrieur de l'index ou du magasin d'objet.

Note : Cette fonctionnalit est disponible via les Web Workers.

Dans cet article

Mthodes

IDBCursor.advance()

Dfinit le nombre d'itrations vers l'avant.

IDBCursor.continue()

Avance le curseur sur la position suivante le long de sa direction, jusqu' l'lment dont la cl correspond au paramtre (optionnel) pass la fonction.

IDBCursor.delete()

Retourne un objet IDBRequest, et, dans un thread spar, supprime l'enregistrement la position du curseur, sans changer la position du curseur. Ceci peut tre utilis pour supprimer des enregistrements spcifiques.

IDBCursor.update()

Retourne un objet IDBRequest, et, dans un thread spar, met jour la valeur la position actuelle du curseur dans le magasin d'objets. Ceci peut tre utilis pour mettre jour des enregistrements spcifiques.

Proprits

IDBCursor.source Lecture seule

Renvoie le IDBObjectStore ou IDBIndex sur lequel le curseur itre. Cette fonction ne retourne jamais null et ne dclenche pas d'exception, mme dans les cas ou le curseur est en train d'itrer, s'il a itr en dehors la plage ou si la transaction n'est pas active.

IDBCursor.direction Lecture seule

Renvoie la direction de parcours du curseur. Voir le paragraphe suivant, Constantes, pour les valeurs possibles.

IDBCursor.key Lecture seule

Renvoie la cl de l'enregistrement la position du curseur ou undefined si le curseur est en dehors de la plage. La cl peut tre de n'importe quel type de donnes.

IDBCursor.primaryKey Lecture seule

Renvoie la cl primaire effective actuelle du curseur ou undefined si le curseur est actuellement itr ou a itr en dehors de sa plage. La cl primaire du curseur peut tre de tout type de donnes.

Constantes

Obsolte: Cette fonctionnalit n'est plus recommande. Mme si certains navigateurs la prennent encore en charge, elle a peut-tre dj t supprime des standards du web, est en passe d'tre supprime ou n'est conserve qu' des fins de compatibilit. vitez de l'utiliser et mettez jour le code existant si possible ; consultez le tableau de compatibilit au bas de cette page pour vous aider prendre votre dcision. Sachez que cette fonctionnalit peut cesser de fonctionner tout moment.

Attention : Ces constantes ne sont plus disponibles - elles ont t retires depuis Gecko 25. Les valeurs quivalentes en chanes de caractres devraient tre utilises la place (cf. bug Firefox 891944).

Constante Valeur Description
NEXT

"next"

Le curseur indique tous les enregistrements, y compris les doublons. Il commence la limite infrieure de la plage de cl et se dplace vers le haut (en itrant dans l'ordre des cls).
NEXTUNIQUE

"nextunique"

Le curseur indique tous les enregistrements, l'exclusion des doublons. Si plusieurs enregistrements existent avec la mme cl, seule la premire itration est rcupre. Il commence la limite infrieure de la plage de cl et se dplace vers le haut.
PREV

"prev"

Le curseur indique tous les enregistrements, y compris les doublons. Il commence la limite suprieure de la plage de cl et se dplace vers le bas (en itrant dans l'ordre inverse des cls).
PREVUNIQUE

"prevunique"

Le curseur indique tous les enregistrements, l'exclusion des doublons. Si plusieurs enregistrements existent avec la mme cl, seule la premire itration est rcupr. Il commence la limite suprieure de la plage de cl et se dplace vers le bas.

Exemple

Dans ce fragment simple, nous crons une transaction, rcuprons un magasin d'objets, puis utilisons un curseur pour parcourir tous les enregistrements du magasin d'objets. Le curseur ne nous oblige pas slectionner les donnes bases sur une cl, nous pouvons simplement travailler sur tout les enregistrements. Notez galement que dans chaque itration de la boucle, vous pouvez rcuprer les donnes de l'enregistrement en cours sous l'objet curseur l'aide curseur.value.toto. Pour un exemple de travail complet, voir notre exemple IDBCursor (l'exemple en live).

js
function afficheDonnee() {
  var transaction = db.transaction(["grandListAlbum"], "readonly");
  var objectStore = transaction.objectStore("grandListAlbum");

  objectStore.openCursor().onsuccess = function (event) {
    var curseur = event.target.result;
    if (curseur) {
      var listItem = document.createElement("li");
      listItem.innerHTML =
        curseur.value.titreAlbum + ", " + curseur.value.annee;
      list.appendChild(listItem);

      curseur.continue();
    } else {
      console.log("Entres tous affichs.");
    }
  };
}

Spcifications

Spcification
Indexed Database API 3.0
# cursor-interface

Compatibilit des navigateurs

Voir aussi


Web Proxy Viewer  |  New URL  |  Original Page