Android打開或創建Sqlite數據庫只需上述四步:
下面舉例說明:
1繼承幫助者
public class MySqliteOpenHelper extends SQLiteOpenHelper {
@Override
public void onCreate(SQLiteDatabase db) {
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
}
}
2寫構造方法
構造方法裏:
context是傳一個上下文,
name爲你數據庫名字,
SQLiteDatabase.CursorFactory factory 寫爲null即可。
version是版本號,從1開始,不可小於1。
看源碼中描述更具體:
public class MySqliteOpenHelper extends SQLiteOpenHelper {
public MySqliteOpenHelper(@Nullable Context context, @Nullable String name, int version) {
super(context, name, null, version);
}
@Override
public void onCreate(SQLiteDatabase db) {
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
}
}
3實例化幫助者
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
MySqliteOpenHelper mySqliteOpenHelper = new MySqliteOpenHelper(getApplicationContext(),"mydb.db",1);
}
}
4得數據庫
getReadableDatabase() 和getWritableDatabase()作用基本一樣,當數據庫存在就打開,不存在就創建。只是getReadableDatabase() 會在磁盤滿時返回一個只讀數據庫。
源碼描述getReadableDatabase()如下:
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
MySqliteOpenHelper mySqliteOpenHelper = new MySqliteOpenHelper(getApplicationContext(),"mydb.db",1);
SQLiteDatabase sqLiteDatabase = mySqliteOpenHelper.getWritableDatabase();
}
}
完成後在虛擬機得設備文件管理下/data/data/你的包名/databases目錄下可以看到數據庫文件已經創建: