NoteAndroidアプリ開発入門のFAQとおすすめアンドロイドアプリ・ゲーム紹介サイトです。(adb)を使って、SQLiteを操作する。(adb)は、デバッグの際に使用するエミュレーターやアンドロイド端末を操作することができるコマンドラインツールです。adbを使うことで、SQLiteをコマンドライン上で操作することができます。1まず、操作したデータベースがあるアプリをデバッグし、エミュレータを立ち上げておきます。SDK内の「platform-tools」に変更します。shellを起動します。shell」と入力しても実行可能です。/data/data/(パッケージ名)/databases」と入力して、カレントディレクトリーを変更します。(データベース名)」と入力します。testdb」)5「sqlite>」の文字が出てくるので、SQL文を書くと、SQLiteを操作することができます。testtb;」と書くと、testtbテーブルにあるデータが列挙されます。exit」で終了します。AMSQLiteの使い方(SQLiteOpenHelperクラス)~その1~で作ったサンプルに、SQLiteのレコードの更新機能と削除機能を追加してみました。前回のサンプルと同じように、エディットテキストに入力して、「追加」ボタンを押すと、データがデータベースに追加されていきます。「削除」ボタンを押すと、ID番号が一番大きいIDのデータが削除されます。「更新」ボタンを押すと、ID番号が一番大きいIDのデータが「更新しました」に変わります。「削除」ボタンを押すと、ID番号が一番大きいIDのデータが削除されます。:SQLのWHERE条件文を作成するための引数。_id=1とかcomment=2などの簡単な条件文じゃないと、デバックが通りませんでした。max関数など複雑な条件文にするときはdb.execSQL(“”);を利用した方がいいかもしれないです。:SQLのWHERE条件文を作成するための引数。両方とも「null」にすると、すべてのレコードが削除されます。File(“/data/data/com.sample.android.dbsamplea/databases/testdb”);file.delete();データベースそのものを削除するときは、file.delete();を使います。File(“/data/data/(パッケージ名)/databases/(データベース名)“)でFileオブジェクトを生成し、その後delete();を使って削除します。(File(“”)の引数は、データベースがあるパスです。Eclipseで、デバッグする場合は、DDMS画面で確認できます。)↓↓↓修正または追加したファイルのコードは以下の通りです。↓↓↓(それ以外は、SQLiteの使い方(SQLiteOpenHelperクラス)~その1~で作ったものと同じです。PMSQLiteのデータベースを作成し、エディットテキストから入力したデータを登録し、画面に表示するサンプルを作ってみました。「データベース一覧」に、データベースに登録されているデータが表示されます。「five」と入力して、追加ボタンを押すと、一覧に「5:five」と表示され、データベースにデータが追加されていきます。{}「onCreate」は、データベースを作成した時に呼び出されるメソッドで、「onUpgrade」は、データベースをバージョンアップした時に呼び出されるメソッド。「onCreate」に、データベースのテーブルを作成するコードを書くことが多い。しておけば大丈夫だと思います。“の中にSQL文を書いて実行することができる。テーブルを作成するだけでなく、レコードの追加(INSERT)、更新(UPDATE)、削除(DELETE)なども実行できる。検索(SELECT)は発行されないらしいので、db.queryを使う。:SQLのWHERE条件文を作成するための引数。String[]{“1”});を実行すると、_id=1のレコードが削除される。(引数を二つに分けているのは、SQLインジェクション対策だと思われます。{/*データがなくなるまで、ループ処理が繰り返される。c)は、カーソルを自動で管理してくれるメソッドで、このメソッドを呼び出した後、c.moveToNextを呼び出すと、カーソルが最初のデータに移動します。そのあとに、c.moveToNextを呼び出すとデータがなくなるまで、次のデータにカーソルが移動します。(c.moveToFirstでも、最初のデータに移動することができますが、カーソルを使い終わった後に、c.closeをする必要があります。これをしないと、デバッグの際にSQLiteCursor.finalize()で強制終了してしまいます。c)は、カーソルのcloseを自動でしてくれるみたいなので、必要ありません。values);第一引数:テーブル名(String型)第二引数:nullColumnHack。nullで大丈夫だと思います。(String型)第三引数:カラム値を格納したContentValues型の引数(ContentValues型)◆◆◆ContentValuesに値を追加する。edittext.getText().toString());第一引数:キー値(カラム値)(String型)第二引数:値(String型、integer型、Long型など)↓↓↓修正または追加したファイルのコードは以下の通りです。↓↓↓(それ以外は、新規プロジェクトを生成した時のものと同じです。//データベースのデータを読み取って表示する。//データベースに、データを登録。//データベースのデータを読み取って表示する。PMEclipseの画面左にあるパッケージエクスプローラーのプロジェクトのところにだけ、赤いエラーマークがついていて、中のソースにはエラーマークがついていないときは、Eclipseのメニューの[プロジェクト]の[クリーン]を押して、ワークスペースをビルドし直すと、エラーマークが消えることが多いです。それでも、消えないときは、「debug.keystore」の有効期限が切れている可能性があります。その時は、「debug.keystore」を削除してから、「クリーン」を押すとエラーマークが消えます。(「debug.keystore」の場所は、Eclipseのメニューの[ウィンドウ]→[設定]で、「設定」画面に入って、左メニュー[Android]→[ビルド]で確認できます。PMIE8で、アンドロイドアプリのapkファイルをアップロードしようとすると、「予期しないエラーが発生しました。してからもう一度お試しください。」とエラーが出て、アップロードできません。Firefox」、「Safari」でアップロードすると、エラーなくアップロードできました。IE8は、四、五ケ月ずっとアップロードできないままですし、IE9もアップロードできない時があるみたいので、アップロード時のブラウザは他のものを使った方がいいかもしれません。(adb)を使って、SQLiteを操作する。(adb)を使って、SQLiteを操作する。