Movatterモバイル変換


[0]ホーム

URL:


  1. Web
  2. Les API Web
  3. IDBFactory
  4. IDBFactory.open()

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 EnglishAlways switch to English

IDBFactory.open()

Baseline Widely available

Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis ⁨septembre 2021⁩.

La méthodeopen() de l'interfaceIDBFactory lance une requête pour ouvrir uneconnexion à une base de données.

La méthode renvoie immédiatement un objetIDBOpenDBRequest puis effectue l'opération d'ouverture de façon asynchrone. Si l'opération réussit, un évènementsuccess sera éms sur l'objetIDBOpenDBRequest renvoyé par la méthode, et la propriétéresult de l'évènement aura la valeur de l'objetIDBDatabase associé à la connexion.

Si une erreur se produit lors de la connexion, un évènementerror sera émis sur l'objetIDBOpenDBRequest renvoyé par la méthode.

Cette méthode peut également émettre les évènementsupgradeneeded,blocked ouversionchange.

Note : Cette fonctionnalité est disponible via lesWeb Workers.

Syntaxe

La syntaxe standard est la suivante :

js
var IDBOpenDBRequest = indexedDB.open(nom);var IDBOpenDBRequest = indexedDB.open(nom, version);

Paramètres

nom

Le nom de la base de données qu'on souhaite ouvrir.

versionFacultatif

Paramètre optionnel qui représente la version de la base de données qu'on veut ouvrir. Si ce paramètre n'est pas fourni et que la base de données existe, une connexion sera ouverte sans changer la version de la base de données. Si ce paramètre n'est pas fourni est que la base de données n'existe pas, elle sera créée avec une version1.

Objet options expérimental de Gecko

options (version etstorage)FacultatifObsolète

Dans Gecko, à partir dela version 26, il est possible de passer en paramètre un objetoptions non standard, qui contienne le numéro de version de la base de données (équivalent donc au paramètreversion définit ci-avant), et également une valeurstorage qui décrit si on souhaite utiliser un stockage permanent (avec la valeurpersistent) ou un stockage temporaire (avec la valeurtemporary).

Attention :L'attributstorage est déprécié et sera prochainement retiré de Gecko. Vous devriez utiliserStorageManager.persist() à la place pour obtenir un stockage persistant.

Note :Vous pouvez consulter l'articleles limites de stockage du navigateur et les critères d'éviction pour en savoir plus sur les différents types de stockage disponibles et la façon dont Firefox gère les données côté client.

Valeur de retour

Un objetIDBOpenDBRequest sur lequel sont déclenchés les différents évènements liés à cette requête.

Exceptions

Cette méthode peut lever uneDOMException de type suivant :

ExceptionDescription
TypeErrorLa valeur de version est zéro ou un nombre négatif ou n'est pas un nombre.

Exemples

Voici un exemple d'ouverture de la base de donnéestoDoList en utilisant la syntaxe standard et le paramètreversion :

js
var request = window.indexedDB.open("toDoList", 4);

Dans le fragment de code qui suit, on effectue une requête pour ouvrir une base de données et on inclut des gestionnaires d'évènements pour gérer la réussite ou l'échec de l'ouverture. Pour consulter un exemple fonctionnel complet, vous pouvez étudier notre applicationTo-do Notifications (cf. l'exemplelive).

js
var note = document.querySelector("ul");window.indexedDB =  window.indexedDB ||  window.mozIndexedDB ||  window.webkitIndexedDB ||  window.msIndexedDB;// NE PAS utiliser "var indexedDB = ..." si on n’est pas dans une fonction.// On pourrait avoir besoin de références vers quelques objets window.IDB* :window.IDBTransaction =  window.IDBTransaction ||  window.webkitIDBTransaction ||  window.msIDBTransaction;window.IDBKeyRange =  window.IDBKeyRange || window.webkitIDBKeyRange || window.msIDBKeyRange;// Mozilla n’a jamais préfixé ces objets, donc on n’a pas besoin de window.mozIDB*// On ouvre la version 4 de la base de donnéesvar DBOpenRequest = window.indexedDB.open("toDoList", 4);// On ajoute deux gestionnaires d'évènements// Le premier utilisé en cas d'échecDBOpenRequest.onerror = function (event) {  note.innerHTML += "<li>Erreur lors du chargement de la base.</li>";};// Et le second en cas de réussiteDBOpenRequest.onsuccess = function (event) {  note.innerHTML += "<li>Base de données initialisée.</li>";  // On stocke le résultat de l'ouverture dans la  // variable db qui sera utilisée par la suite  // pour d'autres opérations  db = DBOpenRequest.result;};

Spécifications

Specification
Indexed Database API 3.0
# ref-for-dom-idbfactory-open②

Compatibilité des navigateurs

Voir aussi

Help improve MDN

Learn how to contribute

Cette page a été modifiée le par lescontributeurs du MDN.


[8]ページ先頭

©2009-2025 Movatter.jp