代码之家  ›  专栏  ›  技术社区  ›  thedude19

如何关闭和重新打开Sqlite数据库?

  •  2
  • thedude19  · 技术社区  · 16 年前

    还原后,我需要关闭并重新打开数据库连接。我该怎么做?

    2 回复  |  直到 16 年前
        1
  •  1
  •   Romain Hippeau    16 年前

    SQLite Database class 有开闭两种方法。

        2
  •  2
  •   rayyildiz    16 年前

    此代码可能会帮助您。

    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);
        }
      }
    }
    
    推荐文章