Sql server突然停止识别我的新列

时间:2012-09-12 17:57:08

标签: stored-procedures intellisense sql-server-2012

我正在使用stored procedure中的SQL SERVER 2012

突然间,我的存储过程无法编译。

它在我尝试添加的每一列上都显示invalid column name

但我可以运行查询,列就在那里

SELECT FirstName FROM dbo.Contacts

此外,我没有对代码进行任何更改。

  • 我尝试重新启动

  • 我重新创建了列

  • 我刷新了intelliSense缓存

没有运气......

这是代码的一部分

DECLARE curContact Cursor

FOR SELECT dbo.Contacts.ContactID, dbo.Contacts.FirstName, dbo.Contacts.MiddleName, dbo.Contacts.LastName, dbo.Contacts.ContactName FROM dbo.Contacts
FOR UPDATE OF  dbo.Contacts.FirstName, dbo.Contacts.MiddleName, dbo.Contacts.LastName
OPEN curContact

这是表结构

CREATE TABLE [dbo].[Contacts](
    [ContactID] [int] NOT NULL,
    [MillID] [int] NULL,
    [ClientID] [int] NULL,
    [FirstName] [nvarchar](64) NULL,
    [MiddleName] [nvarchar](64) NULL,
    [LastName] [nvarchar](64) NULL,
    [Gender] [bit] NULL,
    [ContactName] [nvarchar](50) NULL,
    [ContactTitle] [nvarchar](50) NULL,
    [ContactPhoneNo] [nvarchar](50) NULL,
    [ContactPhoneExt] [nvarchar](50) NULL,
    [ContactFaxNo] [nvarchar](50) NULL,
    [ContactEmail] [nvarchar](50) NULL,
    [Comment] [nvarchar](max) NULL,
    [CreatedBy] [nvarchar](50) NULL,
    [CreatedDate] [datetime] NULL,
    [ModifiedBy] [nvarchar](50) NULL,
    [ModifiedDate] [datetime] NULL,
    [ContactCellNo] [nvarchar](50) NULL,
    [ContactPageNo] [nvarchar](50) NULL,
    [ContactHomeNo] [nvarchar](50) NULL,
    [ContactOtherNo] [nvarchar](50) NULL,
    [Language] [nvarchar](15) NULL,
    [CalendarQuantityEnglish] [smallint] NULL,
    [CalendarQuantityFrench] [smallint] NULL,
    [CalendarKeepBy] [nvarchar](50) NULL,
    [CalendarComment] [nvarchar](250) NULL,
    [OtherQuantityEnglish] [smallint] NULL,
    [OtherQuantityFrench] [smallint] NULL,
    [OtherKeepBy] [nvarchar](50) NULL,
    [OtherComment] [nvarchar](250) NULL,
    [Validated] [date] NULL,
    [ValidedByWho] [nvarchar](64) NULL
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]

有什么想法吗?

1 个答案:

答案 0 :(得分:6)

您需要刷新SSMS智能感知缓存(CTRL + SHIFT + R或编辑 - >智能感知 - >刷新本地缓存)。