2012-03-01 73 views
0

这是一些怪异的行为...奇怪的行为时,修改表或过程在SQL Server 2008 Management Studio中

每当我脚本某些表(使用CREATE TO ...)或编辑存储过程(使用修改的右键单击快捷菜单),我有时会非常奇怪的结果...例如,脚本大多数表给我:

CREATE TABLE [dbo.].[TableINeverAskedFor] 
... 

CREATE TABLE [dbo].[TableIWant](
    [ID] [int] IDENTITY(1,1) NOT NULL, 
    [Name] [nvarchar](128) NOT NULL, 
    [ModuleID] [int] NOT NULL, 
    [OtherInfo] [int] NOT NULL, 
CONSTRAINT [PK_ModuleDefinitions] PRIMARY KEY NONCLUSTERED 

CREATE TABLE [dbo.].[TableINeverAskedFor] 
... 

ALTER TABLE [dbo].[TableWhichHasNothingToDoWithMyTable] ADD CONSTRAINT [FK_WhyDoesThisHappen?] DEFAULT ((0)) FOR [ID] 

存储过程是更加怪异...越大sotred过程中,更多的修改脚本,我得到,就像上面一样。这真的很烦人,我恐怕我会做一些愚蠢的事情,有一天不会注意。

相关信息:

  • 我已经安装了SQL Server 2008 R2,一个新的安装。
  • 我的店里有几个开发者遇到了类似的问题。
  • 我也有一个SQL Server 2008框(没有R2)做同样的事情。
  • 我的实例更新了SP1,他们没有。
  • 我们也可以在多个数据库上复制该问题。
  • 我们的生产服务器没有给我们同样的问题。
  • 某些存储过程和表不存在此问题,但是可以复制相同的存储过程和表。这不是一个随机问题。
  • 我没有安装插件。

编辑:这不是奇怪的...我可以看到它是有用的表创建。编辑一个存储过程虽然,这是我非常困惑。

回答

1

在Management Studio中,转到Tools > Options > SQL Server Object Explorer > Scripting,并将Generate script for dependent objects更改为false。假是默认的,所以你确实在某个时候要求这个。 ;-)

+0

真棒,修复它,但我觉得很奇怪,它为大家工作的方式。你认为R2现在默认?我无法想象我们每个人都决定改变这个设置,然后忘记:) – 2012-03-01 18:43:31

+0

我看了一些很少交互使用的系统,它们都被设置为false。 – 2012-03-01 18:56:17

+0

奇怪......感谢信息,但我永远不会认为椅子和键盘之间会出现问题 – 2012-03-01 19:37:07

相关问题