【发布时间】:2017-09-14 01:52:57
【问题描述】:
我知道通常在单击 Ctrl+Shift+R 时会刷新智能感知。 另外,通过 Edit - Intellisense - Refresh Local cache....
但是,我有一个脚本,当我更新我的数据库对象以使它们保持同步时,我会运行该脚本。脚本的一部分是更新.....
IF EXISTS (SELECT 1 FROM MyTable WHERE MyCol IS NULL)
BEGIN
UPDATE MyTable
SET MyCol = 1
WHERE MyCol IS NULL;
END
GO
现在,以前 MyCol 被称为其他名称。但现在它被称为 MyCol,我可以在对象资源管理器中看到它。 我在 MyCol 下有红色波浪线,所以我按照上面的方法刷新了智能感知缓存。然而,没有任何变化。 如果我将更新复制到新的查询编辑窗口中,则不会出现红色曲线。
更新运行正常,我可以毫无问题地运行完整的脚本。只是让我烦恼的是为什么这个特定的脚本不会消失。
我已经重启了SSMS,重启了我的机器……
我还能尝试什么?
【问题讨论】:
-
另外,如果我将 MyCol 更改为之前的名称,则不会出现红色波浪线 - 但显然,由于该列不存在,因此该语句不会运行!