Tech Sheets

IndexedDBのオブジェクトストアにデータを追加したり、更新したりする

最終更新日:2020-07-24

IndexedDBのオブジェクトストアにデータを追加するには、 add()put() を使います。 add() の場合、オブジェクトストアにすでに同じキーのオブジェクトがあった場合はエラーとなり、 put() の場合は更新となります(なければ作成)

const tr = db.transaction([storeName], "readwrite");
const store = tr.objectStore(storeName);

const request = store.put(value);
// add()の場合、キー重複時はエラーになる
// const request = store.add(value);

tr.oncomplete = () => {
    // データの追加更新にすべて成功した場合の処理
};
tr.onerror = (err) => {
    // なにか失敗したときの処理
};

トランザクションになっているので、データの追加更新はまとめて行うことができます。

一覧に戻る