《第一行代码》学习笔记24-持久化技术(3)
1.SQLite-輕量級的關系型數據庫,運算速度非常快,占用資源很少,通常需要幾百K的內存,故特別適合在移動設備上使用。
2.SQLite支持標準的SQL語法,遵循數據庫的ACID事務,比一般的數據庫簡單的多,甚至不用設置用戶名和密碼即可使用。
3.Android為讓我們更加方便地管理數據庫,提供了一個SQLiteOpenHelper幫助類,借助該類對數據庫進行創建和升級。
4.SQLiteOpenHelper是個抽象類,使用它需要創建一個自己的幫助類去繼承它。其有兩個抽象方法,是onCreate()和onUpgrade(),
必須在自己的幫助類里重寫這兩個方法,再分別在兩個方法中去實現創建,升級數據庫的邏輯。
5.SQLiteOpenHelper中有兩個非常重要的實例方法:getReadableDatabase()和getWritableDatabase()。這兩個方法都可以創建或打開一個現有
的數據庫(如果數據庫已存在則直接打開,否則創建一個新的數據庫),并返回一個可對數據庫進行讀寫操作的對象。不同的是,當數據庫不可寫入
時(如磁盤空間已滿)getReadableDatabase()方法返回的對象將以只讀的方式去打開數據庫,而getWritableDatabase()方法則出現異常。
6.SQLiteOpenHelper有兩個構造方法可供重寫,一般使用參數少一點的那個構造方法。該構造方法中接收四個參數,第一個是Context,必須要有它
才能對數據庫進行操作;第二個是數據庫名,創建數據庫時使用的就是這里指定的名稱;第三個允許我們在查詢數據的時候返回一個自定義的Cursor,
一般是傳入null;第四個表示當前數據庫的版本號,可用于對數據庫升級操作。
7.構建出SQLiteOpenHelper的實例后,再調用getReadableDatabase()或getWritableDatabase()方法就能創建數據庫,數據庫文件會存放在
/data/data//databases/目錄下。此時,重寫的onCreate()方法也會得到執行,故通常會在這里去處理一些創建表的邏輯。
8.創建一個名為BookStore.db的數據庫,在這個數據庫中新建一張Book表,表中有id(主鍵),作者,價格,頁數和書名等列。
Book表的建表語句如下:
integer:整型,real:浮點型,text:文本類型,blob:二進制類型。上述建表語句,使用了primary key將id列設為主鍵,并用autoincrement關鍵字
表示id列是自增長的。
轉載于:https://www.cnblogs.com/Iamasoldier6/p/5025924.html
總結
以上是生活随笔為你收集整理的《第一行代码》学习笔记24-持久化技术(3)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: (转)wamp2.5虚拟主机Virtua
- 下一篇: 折纸比山高