【问题标题】:How to close and re-open Sqlite database?如何关闭并重新打开 Sqlite 数据库?
【发布时间】:2010-06-23 01:40:57
【问题描述】:

在我的应用中,我支持Sqlite db文件的备份和恢复。

我需要在恢复后关闭并重新打开我的数据库连接。我该怎么做?

【问题讨论】:

  • 你能发布一些关于你如何访问数据库的代码吗?另外,你如何备份和恢复数据库?请更新您的帖子,以便所有人都能看到。

标签: android sqlite


【解决方案1】:

此代码可能会对您有所帮助。

public class DbHelper {
  private static final String DATABASE_NAME = "rayyildiz_sample.db";
  private static final int DATABASE_VERSION = 1;
  private static final String TABLE_NAME = "Test";
  private static final String TABLE_CREATE = "CREATE TABLE " + TABLE_NAME + " ( "
      + "  \"Id\" INTEGER PRIMARY KEY,"
      + "  \"Firstname\" TEXT,"
      + "  \"Lastname\" TEXT,"
      + "  \"PhoneNumber\" TEXT" + ")";
  private static final String TABLE_INSERT = "INSERT INTO " + TABLE_NAME + "(Firstname,Lastname,PhoneNumber) VALUES (?,?,?)";

  private Context context;
  private SQLiteDatabase database;
  private SQLiteStatement insertSQLiteStatement;

  public DbHelper(Context context) {
    this.context = context;
    DbOpenHelper dbOpenHelper = new DbOpenHelper(context);
    database = dbOpenHelper.getWritableDatabase();
    insertSQLiteStatement = database.compileStatement(TABLE_INSERT);
  }

  public void close(){
    database.close();
  }

  public void reopen(){
    close();
    DbOpenHelper dbOpenHelper = new DbOpenHelper(context);
    database = dbOpenHelper.getWritableDatabase();    
  }

  private static class DbOpenHelper extends SQLiteOpenHelper {
    public DbOpenHelper(Context context) {
      super(context, DATABASE_NAME, null, DATABASE_VERSION);
    }

    @Override
    public void onCreate(SQLiteDatabase db) {
      db.execSQL(TABLE_CREATE);
    }

    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
      db.execSQL("DROP TABLE IF EXISTS " + TABLE_NAME);
      onCreate(db);
    }
  }
}

【讨论】:

    【解决方案2】:

    SQLite Database class 有一个打开和关闭方法。

    【讨论】:

    • 如何获取我的 SQLite 数据库实例来执行此操作?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多