SQL服务器无效的对象名称 – 但表列出在SSMS表列表中

我正在尝试为新创build的数据库创build一个存储过程。 然而,SSMS intellisense不能识别已经创build的表格的一半以上。

例如,在表格下方的左边一列中,我有一个表dbo.Room ,当我在新的查询窗口中input“ dbo. ”时,表中没有列出,实际上只列出了37个表中的17个。 通过intellisense列出的表格与没有列出的表格没有区别。 如果我手动键入dbo.Room,则会加下划线,并显示错误“ Invalid Object Name 'dbo.Room'. ”。

我在设置表格时错过了什么?

更新:我已经尝试刷新表列表(几次)

尝试:

编辑 – > 智能感知 – > 刷新本地caching

这应该刷新由Intellisensecaching的数据以提供预先支持和预执行错误检测。

Ctrl + Shift + R也在pipe理工作室2008中刷新智能感知。

一旦创build新的SQL Server对象,新创build的对象不会在IntelliSence本地caching中得到更新,因此,它会在该对象下方显示红线。 因此,您只需刷新SSMS IntelliSence本地caching,一旦刷新它, IntelliSence将自动将新创build的对象添加到caching中,红线将消失。 尝试这个

Edit -> IntelliSense -> Refresh Local CacheCtrl + Shift + R

在这里输入图像描述

在我的情况下,IntelliSensecaching列出了一个完全不同的数据库的对象信息。 如果我单击SSMS中的“新build查询”button,它将打开一个查询到我在服务器上的默认目录,该查询编辑器将始终只使用该数据库。 刷新caching并没有改变任何东西。 重新启动SSMS并没有改变任何东西。 更改数据库并没有改变任何东西。

我最终创build了一个查询,通过右键单击我想要使用的数据库,并从该上下文菜单中select“新build查询”。 现在, SSMS使用智能感知的正确对象。

你确定有问题的表存在吗?

你是否刷新对象资源pipe理器中的表格视图? 这可以通过右键单击“表”文件夹并按F5键来完成。

您可能还需要重新刷新智能感知caching。

这可以通过菜单路线完成:编辑 – >智能感知 – >刷新本地caching

即使在将SP3安装到SQL Server 2008 Enterprise之后,这仍然是一个“问题”。 Ctrl + Shift + R就像大家一直在说的那样为我解决了这个问题。

解决scheme是:

  • 点击菜单查询,
  • 然后点击“更改数据库”。
  • select适当的数据库名称。

而已。

你尝试过:右键单击数据库,然后单击“刷新”

我意识到这个问题已经被回答了,但是,我有一个不同的解决scheme:

如果您正在编写一个脚本,而不重新创build它们,那么稍后尝试引用它们时,这些表格将显示为缺失。

注意:对于一直在运行的脚本,这不会发生,但是有时脚本的查询要比每次input脚本要容易得多。

当我使用这个语法问题解决了同样的问题。

句法:

 Use [YourDatabaseName] Your Query Here 

解决了SSMS 2016。

有类似的问题,但Intellisense不在编辑菜单。

什么似乎解决它是打开和closuresIntellisens,右键单击SQL编辑器,然后单击“智能感知启用”。 再次右键点击“Intellisense Enabled”将其重新打开。 Ctr Q,我也是这样做的。

这解决了这个问题,我也知道在编辑菜单上获得智能感知。

我只需要closuresSMSS并重新打开它。 我尝试刷新本地caching,并没有工作。