为什么 SSMS 在添加列时不智能?

发布于 2024-08-22 22:33:33 字数 413 浏览 5 评论 0原文

每当我想向表中添加列时,通常会出现这样的情况:

  1. 启动 SQL Server Management Studio (SSMS)
  2. 在表上选择“设计” 我想要添加列以
  3. 将新列添加到表中
  4. 保存
  5. 获取SSMS 无法保存的错误,因为它需要删除表(并且不能删除表,因为表上有外键)。
  6. 沮丧的是我忘记了这是 SSMS 无法做到的事情
  7. 手动构造一个 alter table 命令来添加列
  8. 继续生活。

这次我在数字 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:

  1. Fire up SQL Server Management Studio (SSMS)
  2. Select "Design" on the table I want to add the column to
  3. Add the new column to the table
  4. Save
  5. 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).
  6. Get frustrated that I forgot that this is something that SSMS can't do
  7. Construct an alter table command by hand to add the column
  8. 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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

美人如玉 2024-08-29 22:33:33

或者,您可以转到工具-->选项-->设计器-->表和数据库设计器,然后取消选中“防止保存需要重新创建表的更改”

问题就解决了。

以下是 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.

When you change a table so that you
alter the metadata structure of the
table, and then you save the table,
the table must be re-created based on
these changes.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文