0

のサブクラスではないクラスでデータベースを開くにはどうすればよいActivityですか?

のサブクラスでActivity使用できopenOrCreateDatabase()ますが、別のクラスでデータベースを開くことはできますか?

データベースインスタンスを静的インスタンスにして、で開いてActivity他のクラスの静的インスタンスを取得しようとしましたが、データベースが閉じていることを示す例外がスローされます。

4

2 に答える 2

2

このチュートリアルをチェックしてください。

私はそれを経験しました、そしてそれはAndroidでSQLiteを使う方法についての本当に良いチュートリアルです。

基本的に、テーブルの作成を行うデータベースヘルパークラスを作成する必要があります。次に、でこのヘルパークラスを使用Activityして、データベースやテーブルを作成できます。

于 2012-08-09T13:50:12.620 に答える
1

SQLiteデータベースアダプタを使用するのが一般的な方法であり、データベースを利用しているアクティビティとは別のヘルパークラスを使用することもあります。これは、コードを使用する例へのリンクです。vogellaチュートリアルも優れていますが、ContentProviderを使用すると、SQLiteDBのみに必要なものを理解するのが少し難しくなります。

基本的に、ヘルパークラスは、DBの作成、更新、および削除を担当し、アダプタークラスは、値の変更、行の削除、および実際にヘルパーを呼び出してデータベースを開くためのメソッドを処理します。

于 2012-08-09T13:53:25.763 に答える