I've notice an issue - it feels like a bug but I suspect a 'feature' - in SSMS in SQL Server 2008.
I have various tabs open, for example an alter table script in one table and a SProc that queries that table in another tab, and when I execute my Alter Table script the changes are not reflected in Intellisense in the other tab.
I can create new queries and the changes are still not reflected in Intellisense. If I open a new SSMS instance, the changes are reflected, until I make further changes, of course.
However, if you over-rule Intellisense and push ahead with your modified tables and code, everything compiles without a grumble (as expected).
Is this a bug? A feature? Is there a setting somewhere that alters this behaviour? I checked in the options but couldn't see anything
CTRL
+ SHIFT
+ R
to update the intellisense, for short.
And no sooner than I post the question, I find the right phrase for a successful search on google.
Yes folks, this is indeed a feature! The intellisense relies on a local cache which you need to manually refresh. See:
http://blogs.msdn.com/dtjones/archive/2008/09/11/refreshing-the-intellisense-cache.aspx
Also: Ninjapig's alternative
It's more than a bit annoying IMHO, but I'm sure the experts would argue there is some important need for it to be this way. After further checking, I've been able to add a 'Refresh Local Cache' button to one of the toolbars. Having quickly tried a refresh, it appears that the refresh takes some time, because Intellisense went from being out of date, to non-existent, and back to updated or a minute or so.
I'm tempted to pull this question, but I'll leave it here in case it helps someone else with this issue, or until someone else decides otherwise...
Well done raising the issue - I have it frequently in VS 2008 SP1 but there coding the right name still produces an error squigly until the refresh happens - and I can't get it to do so at the moment. I suspect I need another shutdown/reload.