SQLite複雜表的更新方式

大學霸發表於2017-04-25
SQLite複雜表的更新方式

在SQLite中,如果早期設計的表無法滿足需要,就需要對錶進行更新,如修改名字、新增列。如果針對簡單表,修改起來相對容易,直接使用提供的ALTER命令即可。但是如果該表與檢視、觸發器、索引有關聯,處理起來就相對繁瑣一些。下面講解這類表的修改方式。

(1)使用以下命令,備份檢視、觸發器的SQL指令碼。

SELECT  sql FROM  main.sqlite_master WHERE type='view' or type='trigger'

(2)關閉外來鍵約束。

PRAGMA foreign_keys=OFF

(3)刪掉關聯的檢視、觸發器和觸發器。

DROP 檢視名
DROP 觸發器名
DROP 索引名

(4)開啟外來鍵約束。

PRAGMA foreign_keys=ON

(5)修改表結構。

(6)修改備份的檢視、觸發器SQL指令碼,並重新構建對應的檢視和觸發器。重新構建索引。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29597077/viewspace-2137921/,如需轉載,請註明出處,否則將追究法律責任。

相關文章