HTML5 IndexedDBのデータ追加例
IndexedDBでデータを追加するサンプルコード
IndexedDBは、ブラウザ上で動作するクライアントサイドのデータベースです。大量のデータをオフラインでも保存・検索できるのが特徴で、Webアプリケーションの高度なデータ管理に活用されています。以下の関数は、IndexedDBのオブジェクトストアにデータを追加する例です。
function add() {
var request = db.transaction(["employee"], "readwrite")
.objectStore("employee")
.add({ id: "001", name: "Amit", age: 28, email: "demo1@example.com" });
request.onsuccess = function(event) {
alert("Amitをデータベースに追加しました。");
};
request.onerror = function(event) {
alert("データを追加できません\r\nAmitはすでにデータベースに存在しています!");
}
}上記のコードでは、次のような社員データをデータベースに追加しています。
const employeeData = [
{ id: "001", name: "Amit", age: 28, email: "demo1@example.com" },
];コードのポイント
- db.transaction(["employee"], "readwrite"):「employee」オブジェクトストアに対して読み書き可能なトランザクションを開始します。IndexedDBでは、すべての操作をトランザクション内で実行する必要があります。
- objectStore("employee"):操作対象となるオブジェクトストアを取得します。
- add():指定したオブジェクトをストアに追加します。同じキー(この例ではid)を持つデータが既に存在する場合は、エラーが発生します。
- onsuccess:データの追加が成功したときに呼び出されるイベントハンドラです。ここではアラートで成功を通知しています。
- onerror:追加に失敗したとき(重複データの存在など)に呼び出されるイベントハンドラです。
このように、IndexedDBではトランザクションを介してオブジェクトストアにアクセスし、非同期のイベントハンドラで結果を処理するのが基本的な流れになります。
-
PHPのsimilar_text()関数とは?文字列の類似度を計算する方法を解説
PHPのsimilar_text()関数は、2つの文字列間の類似度を計算するために使用される組み込み関数です。この関数を使うことで、2つの文字列がどれだけ一致しているかを、一致する文字数やパーセンテージとして把握できます。構文similar_text(str1, str2, percent)パラメータstr1 − 比較対象となる最初の文字列str2 − 比較対象となる2番目の文字列percent − 類似度をパーセンテージで格納するための変数名(第3引数は省略可能で、参照渡しにより結果を受け取ります)戻り値similar_text()関数は、2つの文字列に含まれる一致した文字の数を返します。ま
-
PHPのquotemeta()関数とは?メタ文字のエスケープ方法をわかりやすく解説
PHPのquotemeta()関数は、文字列に含まれるメタ文字(特殊文字)をクォートし、その前にバックスラッシュ(\)を付加するための関数です。正規表現において特別な意味を持つ文字を安全に扱いたい場合などに活用できます。 エスケープ対象となる定義済み文字 quotemeta()関数がバックスラッシュを付加する主な定義済み文字は以下のとおりです。 ピリオド(.) バックスラッシュ(\) プラス記号(+) アスタリスク(*) 疑問符(?) 角括弧([ ]) キャレット(^) ドル記号($) 丸括弧(( )) 構文 quotemeta(str) パラメータ str − チェック対象となる