Android數據庫操作——創建數據庫

在這裏插入圖片描述
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目錄下可以看到數據庫文件已經創建:
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章