我开始使用数据库项目并努力完成简单的任务。如果我想添加一个新列,NOT NULL
如果表中已有数据,我该如何使其工作?
我曾经写过差异脚本,在这种情况下,我会写如下内容:
-- ... ADD COLUMN X ...
-- insert data into x
-- ... ALTER COLUMN X NOT NULL
我需要如何使用数据库项目处理这种情况?
感谢任何提示 sl3dg3
我开始使用数据库项目并努力完成简单的任务。如果我想添加一个新列,NOT NULL
如果表中已有数据,我该如何使其工作?
我曾经写过差异脚本,在这种情况下,我会写如下内容:
-- ... ADD COLUMN X ...
-- insert data into x
-- ... ALTER COLUMN X NOT NULL
我需要如何使用数据库项目处理这种情况?
感谢任何提示 sl3dg3
我终于找到了两种可能的方法。简而言之:
或者
在这里找到:http: //social.msdn.microsoft.com/Forums/en-US/vstsdb/thread/49bf2a88-d80d-4a9f-970e-728bd530332e/
两者都意味着额外的工作,我希望框架能够为这种常见情况提供更多支持。但至少可以这样做。
您也可以从 Publish DB 对话框中,而不是为列指定 DEFAULT 值;进入高级->高级部署选项并选中“生成智能默认值”框。
来自 VS 中的描述:生成智能默认值:在更新包含数据的表时自动提供默认值,其中包含不允许空值的列。
您可以通过在创建列时提供一些默认值来添加非空列。