sqlite データベースで基本的な CRUDS を実装するさまざまなチュートリアルを試しました。しかし、アプリケーションの実行中に sqlite がどのように作成され、使用されるかについての基本的な概念がありません。基本を理解せずにコードを実装しただけで、これはすべての初心者に当てはまると思います。答えを見つけるためにさまざまなキーワードを試しましたが、本当の基本を見つけることができないようです。よく調べていないと思われるかもしれませんが、議論のほとんどは sqlite の定義とサンプル コードに関するものです。sqlite についての理解を共有してください。
- アプリケーションを開くたびに、sqlite はどうなりますか?
- ユーザーがアプリを再開すると、sqlite はどうなりますか?
- sqlite 接続を閉じる本当の理由は、アプリケーションに影響しますか?
- たとえば、アプリ メニューは sqlite データベース (データベース データは別の外部データベース mysql からのもの) から動的に作成されますが、これはアプリケーションの速度を低下させますか?
*ここでため息をつきます。ありがとう。
public DatabaseHandler(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
// Creating Tables
@Override
public void onCreate(SQLiteDatabase db) {
String CREATE_CONTACTS_TABLE = "CREATE TABLE " + TABLE_CONTACTS + "("
+ KEY_ID + " INTEGER PRIMARY KEY," + KEY_NAME + " TEXT,"
+ KEY_PH_NO + " TEXT" + ")";
db.execSQL(CREATE_CONTACTS_TABLE);
}
// Upgrading database
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// Drop older table if existed
db.execSQL("DROP TABLE IF EXISTS " + TABLE_CONTACTS);
// Create tables again
onCreate(db);
}
追加コード:
protected void onPause() {
super.onPause();
if (isFinishing()) {
mCursor.close();
}
}
protected void onDestroy() {
super.onDestroy();
mCursor.close();
}