讓我們從第一次安裝應用程序開始討論。 sqlite的DB將在流動的步驟是init:
檢查是否在應用程序存在安裝文件夾中的[APPNAME] .db的。
創建安裝文件夾中的空[APPNAME] .db文件,如果這個文件不存在。
創建一個記錄來表示當前的應用程序版本,並將其存儲在一個名爲「appversion」表(這也可以存儲在首選項文件)。
負荷的位置,可以將其存儲在步驟3中的舊版本號, 比較它的當前版本號,並且需要執行命名,如「[應用程序名稱] _sql_v1.sql,[APPNAME藪SQL文件] _sql_v2.sql,[appname] _sql_v3.sql',請記住,每個版本都將擁有一個'[appname] _sql_v * .sql'文件,其中包含所有表架構更改並記錄更改。如果您的應用程序已升級到版本7,您會在您的應用程序包中找到7個sql文件。
我們假設某人已經安裝了版本爲2的應用程序,但直到有一天他/她發現當前版本是7,然後他/她將其升級到7,才更新。兩個代碼版本號將是在升級完成後第一次啓動應用時加載:2和7,所以這些sql文件:[appname] _sql_v3.sql,[appname] _sql_v4.sql,[appname] _sql_v5.sql,[appname] _sql_v6.sql,[appname] _sql_v7.sql將逐個執行。
記住這些東西:
1.do沒有把SQL語句初始化代碼,把它放在一個SQL文件,並把它讀作需要的SQLite數據庫 。
2.每個版將擁有一個「[應用程序名稱] _sql_v * .SQL」包含到透水版本所做的更改文件。