2013-03-27 24 views
2

如果我更改表並添加一個新列,將添加從該表中刪除的數據。在sqlite3中更改列並將其添加到表中

ALTER TABLE MyTable ADD COLUMN noOfDays integer default 0 NOT NULL 

將上面的SQL命令降MyTable的,然後用noOfDays列ALTER它還是會只是沒有放棄它添加noOfDays列。

回答

5

不,add只是添加列。它的數據都不會被刪除,表格也不會被刪除。

p.s.從文檔
「注意:另外,當添加CHECK約束時,CHECK約束不會針對表的預先存在的行進行測試。」 (查詢更多SQLite說明書)

+0

非常感謝您的回答! – 2013-03-27 19:46:28

+0

據我記得你必須更新默認值到現有的行(目前無法在文檔中找到它);檢查實例http://stackoverflow.com/questions/3492947/insert-a-not-null-column-to-an-existing-table – Trinimon 2013-03-27 19:51:28

+0

我相信我上面的SQL將創建一個noOfDays列,並插入0作爲默認值。 – 2013-03-27 19:54:24

相關問題