我正在使用部署后迁移脚本在部署项目时从命令行运行sql命令。
在sql server中创建表时:
CREATE TABLE [test] (
[id] INTEGER NOT NULL IDENTITY (1,1),
[somefield] VARCHAR(255) NOT NULL DEFAULT 'y',
PRIMARY KEY ([id])
)
如果我想删除列somefield
,我会从The object 'DF__test__somefiel__3C74E891' is dependent on column 'somefield'
的行中收到来自sql server的消息。消息末尾的字母/数字序列由服务器生成,因此我无法预测它将是什么。我要做的是复制该约束名称,并在删除列之前删除约束。这是我要删除的手动操作。
有没有办法在创建表时命名约束,这样我就可以在删除列之前自动删除约束?
答案 0 :(得分:1)
CREATE TABLE [test] (
[id] INTEGER NOT NULL IDENTITY (1,1),
[somefield] VARCHAR(255) NOT NULL constraint [Desired Name] DEFAULT 'y',
PRIMARY KEY ([id])
)