【发布时间】:2012-05-07 11:48:34
【问题描述】:
我刚刚通过SSMS 设计器将标识列添加到包含数据的现有表中,该表更新正常,我可以成功对其运行选择查询,但在查询完成后,我注意到新列带有下划线红色,错误指示它是无效的列名。
为什么会发生这种情况?如果列无效,我希望查询失败。
SSMS 是否保留对必须刷新的旧表的某种类型的内部引用?
我尝试关闭数据库连接并重新打开它,但仍然是同样的错误。不知道我在这里缺少什么。
SELECT TOP 100
[PRIMARY_NDX_Col1],
[NEW_Col], --QUERY EXECUTES SUCCESSFULLY, BUT THIS IS UNDERLINED RED AS AN INVALID COLUMN
[Col3]
FROM [dbo].[MyTable]
【问题讨论】:
-
刚刚尝试重新启动并修复了它。想知道是否有办法在编辑表格后动态清除 SSMS 2008 缓存。这似乎是人们可能会花费数小时尝试排除故障的那种错误。
-
您无需重新启动 SSMS 即可解决此问题。保持这篇文章得心应手,最常见的原因之一是 SSMS 在刷新其本地元数据缓存方面不够快。 mssqltips.com/sqlservertip/2591/…
-
请解释为什么提供的答案不适用于此问题,以便可以对其进行改进。 @AaronBertrand 里面有很好的提示!
标签: sql sql-server sql-server-2008 tsql sql-server-2005