Android中資料庫公升級說明

2021-05-28 08:35:57 字數 909 閱讀 5861

1. 幫助文件裡說的「資料庫公升級」是指什麼?

你開發了乙個程式,當前是1.0版本。該程式用到了資料庫。到1.1版本時,你在資料庫的某個表中增加了乙個字段。那麼軟體1.0版本用的資料庫在軟體1.1版本就要被公升級了。

2. 資料庫公升級應該注意什麼?

軟體的1.0版本公升級到1.1版本時,老的資料不能丟。那麼在1.1版本的程式中就要有地方能夠檢測出來新的軟體版本與老的資料庫不相容,並且能夠有辦法把1.0軟體的資料庫公升級到1.1軟體能夠使用的資料庫。換句話說,要在1.0軟體的資料庫的那個表中增加那個字段,並賦予這個字段預設值。

3. 程式如何知道資料庫需要公升級?

sqliteopenhelper類的建構函式有乙個引數是intversion,它的意思就是指資料庫版本號。比如在軟體1.0版本中,我們使用sqliteopenhelper訪問資料庫時,該引數為1,那麼資料庫版本號1就會寫在我們的資料庫中。

到了1.1版本,我們的資料庫需要發生變化,那麼我們1.1版本的程式中就要使用乙個大於1的整數來構造sqliteopenhelper類,用於訪問新的資料庫,比如2。

當我們的1.1新程式讀取1.0版本的老資料庫時,就發現老資料庫裡儲存的資料庫版本是1,而我們新程式訪問它時填的版本號為2,系統就知道資料庫需要公升級。

4. 何時觸發資料庫公升級?如何公升級?

當系統在構造sqliteopenhelper類的物件時,如果發現版本號不一樣,就會自動呼叫onupgrade函式,讓你在這裡對資料庫進行公升級。根據上述場景,在這個函式中把老版本資料庫的相應表中增加字段,並給每條記錄增加預設值即可。

新版本號和老版本號都會作為onupgrade函式的引數傳進來,便於開發者知道資料庫應該從哪個版本公升級到哪個版本。

公升級完成後,資料庫會自動儲存最新的版本號為當前資料庫版本號。

參考:stackoverflow對「資料庫版本在資料庫中的儲存位置」的問答。

Android中資料庫公升級說明

1.幫助文件裡說的 資料庫公升級 是指什麼?你開發了乙個程式,當前是1.0版本。該程式用到了資料庫。到1.1版本時,你在資料庫的某個表中增加了乙個字段。那麼軟體1.0版本用的資料庫在軟體1.1版本就要被公升級了。2.資料庫公升級應該注意什麼?軟體的1.0版本公升級到1.1版本時,老的資料不能丟。那麼...

Android中sqlit資料庫公升級或者降級

sqlite是android內建的乙個很小的關係型資料庫。sqliteopenhelper是乙個用來輔助管理資料庫建立和版本公升級問題的抽象類。我們可以繼承這個抽象類,實現它的一些方法來對資料庫進行自定義操作。下面兩個方法必須重寫 onupgrade 呼叫時機是使用者在做應用更新,覆蓋安裝後啟動,如...

android 資料庫 公升級設計

很久以前設計的資料庫建立與公升級的方法,此設計避免了公升級的時候需要多處修改的弊端。如下 public class dbadatper 資料庫名 private static final string database name test 建表語句 此部分只是使用者第一次安裝的時候會在oncreat...