Databaseオブジェクトによるデータベース・アクセス (5/7)
作成:2012-04-23 09:15
更新:2012-04-23 09:15
更新:2012-04-23 09:15
■レコードの追加・削除
では、テーブルを利用する処理を考えていきましょう。まずは、レコードの追加・削除についてです。これらも、もちろんSQL文として実行をしますので、openDatabaseし、transactionでコールバックを呼び出す……という基本的な流れは同じです。
そして、コールバック関数のところで、executeSqlを使って、テーブルにレコードを追加したり削除したりする処理を用意することになります。では、これらのSQL文について整理しておきましょう。
・レコードの追加
・レコードの削除
そして、コールバック関数のところで、executeSqlを使って、テーブルにレコードを追加したり削除したりする処理を用意することになります。では、これらのSQL文について整理しておきましょう。
・レコードの追加
INSERT INTO テーブル ( フィールド1, フィールド2, …… ) VALUES ( 値1, 値2, ……)レコードの追加は、「INSERT INTO」を使います。テーブル名の後に、カッコを付けてフィールド名を記述します。そしてVALUESの後にカッコを付けてそれぞれのフィールドに保管する値を既述します。フィールド名と設定する値は並べる順番を揃えておく必要があります。
・レコードの削除
DELETE FROM テーブル WHERE 削除するレコードの指定レコードの削除は、実はちょっと難しいのです。「DELETE FROM」というものを使いますが、これだけでは削除したい項目を指令することができませ。これには、レコードの検索などで使う「WHERE」という文を使います。これを利用して、削除したいレコードの条件を用意するのです。これにより、その条件に合致するレコードが削除されます。(WHEREについては、この後の検索のところで改めて説明します)
(by. SYODA-Tuyano.)
※プログラムリストが表示されない場合
AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。
●プログラム・リスト●
※文末の~~記号は、次の行と続けて記述することを意味します。 function doAddAction(){ var db = window.openDatabase("Database", "1.0", "mydata", 200000); db.transaction(addDB, errorCB, successCB); } function addDB(tx){ var title = タイトルのテキスト; var memo =メモの内容; tx.executeSql('INSERT INTO MYMEMO (title, memo) VALUES ~~ ("' + title + '", "' + memo + '")'); } function errorCB(err) { console.log("Error processing SQL: " + err.code); } function successCB() { console.log("Error processing SQL: " + err.code); }
※関連コンテンツ
「PhoneGapによるAndroid/iPhoneアプリ開発入門」に戻る