CREATE TABLE IF NOT EXISTS **TEMP_TABLE** (id integer primary key autoincrement, **col2change integer not null**, ...)
INSERT INTO TEMP_TABLE SELECT * FROM EXISTING_TABLE
DROP TABLE EXISTING_TABLE
ALTER TABLE TEMP_TABLE RENAME TO EXISTING_TABLE
由於 SQLite 並沒有提供直接修改欄位的功能,因此做以下步驟
- 根據需要建立新的暫存 Table scheme
- 將資料倒到新的暫存 Table
- 刪掉原本的 Table
- 將暫存 Table 的名稱修改為原本的 Table 名稱
參考:http://stackoverflow.com/questions/10155834/need-a-good-method-to-change-sqlite-column-data-type