为什么 SSMS 在添加列时不智能?
每当我想向表中添加列时,通常会出现这样的情况:
- 启动 SQL Server Management Studio (SSMS)
- 在表上选择“设计” 我想要添加列以
- 将新列添加到表中
- 保存
- 获取SSMS 无法保存的错误,因为它需要删除表(并且不能删除表,因为表上有外键)。
- 沮丧的是我忘记了这是 SSMS 无法做到的事情
- 手动构造一个 alter table 命令来添加列
- 继续生活。
这次我在数字 6 和 7 之间添加一个步骤。我想我会问为什么 SSMS 不能创建一个简单的 alter table 语句来添加我的新列。
(如果重要的话,我正在针对 SQL Server 2008 运行 SSMS 2008 .)
Whenever I want to add a column to a table it usually goes something like this:
- Fire up SQL Server Management Studio (SSMS)
- Select "Design" on the table I want to add the column to
- Add the new column to the table
- Save
- Get an error that SSMS can't save because it would need to drop the table (and it can't because the the table has foreign keys on it).
- Get frustrated that I forgot that this is something that SSMS can't do
- Construct an alter table command by hand to add the column
- Move on with life.
This time I am adding a step between numbers 6 and 7. I thought I would ask why SSMS can't make a simple alter table statement to add my new column in.
(In case it matters I am running SSMS 2008 against SQL Server 2008.)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
或者,您可以转到工具-->选项-->设计器-->表和数据库设计器,然后取消选中“防止保存需要重新创建表的更改”
问题就解决了。
以下是 MSDN 的解释: http://support.microsoft.com/default.aspx/ kb/956176。
Alternatively, you can go to Tools-->Options-->Designers-->Table and Database Designers and uncheck "Prevent saving changes that require table re-creation"
Problem solved.
Here's an explanation from MSDN: http://support.microsoft.com/default.aspx/kb/956176.