【发布时间】:2011-03-22 05:06:17
【问题描述】:
谁能告诉我如何从 sql server management studio 生成 drop 和 create 列脚本?我确实使用了生成更改脚本选项,但它只是为列生成了创建脚本而不是删除脚本。
另外, 我找不到从表设计视图添加命名默认约束或任何其他特定命名约束的方法。如果我指定默认值,它只会添加一个具有动态生成名称的默认约束。
提前致谢 :)
【问题讨论】:
标签: sql-server ssms
谁能告诉我如何从 sql server management studio 生成 drop 和 create 列脚本?我确实使用了生成更改脚本选项,但它只是为列生成了创建脚本而不是删除脚本。
另外, 我找不到从表设计视图添加命名默认约束或任何其他特定命名约束的方法。如果我指定默认值,它只会添加一个具有动态生成名称的默认约束。
提前致谢 :)
【问题讨论】:
标签: sql-server ssms
如果您在 SSMS 的可视化设计器中打开您选择的表,然后删除一列,然后创建一个新列,并在退出或保存之前,从设计器的上下文菜单中选择 Generate Change Script,您应该在该更改脚本中获取这两个操作:
ALTER TABLE dbo.Messages ADD
IsActive bit NOT NULL CONSTRAINT DF_Messages_IsActive DEFAULT 1
GO
ALTER TABLE dbo.Messages
DROP COLUMN ToProfileId
GO
我使用的是 SQL Server 2008 R2 - 不确定与以前的版本相比是否有所改变。重要提示:在获取更改脚本之前不要保存或离开设计器!
据我所知,视觉设计器中没有规定命名默认约束 - 正如您从我的示例中看到的那样,系统默认值似乎非常有用 - 不是吗?
如果您真的必须使用自己的命名约定,恐怕除了在执行之前编辑您的 T-SQL 脚本之外别无他法。
【讨论】: