1. 開発者向けのウェブ技術
  2. Web API
  3. IDBRequest
  4. IDBRequest.error

このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

IDBRequest.error

Baseline 広く利用可能 *

この機能は広く実装されており、多くのバージョンの端末やブラウザーで動作します。2015年7月以降、すべてのブラウザーで利用可能です。

* この機能の一部は、対応レベルが異なる場合があります。

IDBRequest インターフェイスの読み取り専用プロパティ error は、要求が失敗したときエラーを返します。

メモ: この機能はウェブワーカー内で利用可能です。

DOMException、もしくはエラーがないときは null です。例外オブジェクトでは、以下のエラー名が返されます。

AbortError

トランザクションをアボートすると、進行中の全ての要求がこのエラーとなります。

ConstraintError

制約を満たさないデータを追加しようとしたことを示します。これはデータストアやインデックスの作成用の例外タイプです。例えば、既に存在するキーを追加しようとすると、このエラーになります。

QuotaExceededError

割り当てられたディスク領域を使い切り、ユーザーが容量の追加を拒否したことを示します。

UnknownError

データベース自体とは関係ない理由により操作が失敗したことを示します。たとえば、ディスクの I/O エラーによる失敗が該当します。

VersionError

データベースの現在のバージョンより低いバージョンでデータベースを開こうとしたことを示します。

IDBRequest オブジェクトに送られるエラーコードに加え、非同期の操作も例外を発生させる可能性があります。この表は要求の実行中に起こりうる問題を説明していますが、要求を生成するときに他の問題が発生する可能性もあります。たとえば、要求がまだ完了していないときに結果にアクセスすると、InvalidStateError 例外が投げられます。

以下の例では、レコードのタイトルを指定して要求し、onsuccessIDBObjectStore から (objectStoreTitleRequest.result で参照できるようになった) 対応するレコードを取得し、レコードのプロパティ 1 個を更新し、更新したレコードをオブジェクトストアに書き戻します。また、最後には要求が失敗した場合に発生したエラーを報告する onerror 関数もあります。動く例全体は、To-do Notifications アプリケーションを参照してください。(動く例を見る)

js
const title = "Walk dog";
// 通常通りトランザクションを開始します
const objectStore = db
 .transaction(["toDoList"], "readwrite")
 .objectStore("toDoList");
// 指定したタイトルの TO-DO リストを取得します
const objectStoreTitleRequest = objectStore.get(title);
objectStoreTitleRequest.onsuccess = () => {
 // result として返されたデータオブジェクトを取得します
 const data = objectStoreTitleRequest.result;
 // オブジェクトの notified の値を "yes" に更新します
 data.notified = "yes";
 // アイテムをデータベースに書き戻すための新たな要求を生成します
 const updateTitleRequest = objectStore.put(data);
 // この新たな要求が成功したら、再び displayData() 関数を
 // 実行し、表示を更新します
 updateTitleRequest.onsuccess = () => {
 displayData();
 };
};
objectStoreTitleRequest.onerror = () => {
 // 要求でエラーが発生したら、発生したエラーを記録します
 console.log(
 `データの取得中にエラーが発生しました: ${objectStoreTitleRequest.error}`,
 );
};

仕様書

仕様書
Indexed Database API 3.0
# ref-for-dom-idbrequest-error1

ブラウザーの互換性

関連情報

MDN の改良に協力

協力方法を知る

このページは MDN の貢献者によって に最終更新されました。

AltStyle によって変換されたページ (->オリジナル) /