2013-03-27 47 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

相关问题