2012-04-26 6 views
34

Я только что добавил столбец идентификации в существующую таблицу с данными через SSMS Designer, таблица обновляется хорошо, и я могу успешно выполнить запрос выбора, но после завершения запроса I заметил, что новый столбец подчеркивается красным цветом с ошибкой, указывающей, что это недопустимое имя столбца. Почему это происходит? Я ожидаю, что запрос завершится ошибкой, если столбец был недействителен. Сохраняет ли SSMS какой-либо тип внутренней ссылки на старую таблицу, которую нужно очистить? Я попытался закрыть соединение с БД и снова открыть его, но по-прежнему та же ошибка. Не уверен, что мне здесь не хватает.SQL Server Недопустимое имя столбца после добавления нового столбца

SELECT TOP 100 
[PRIMARY_NDX_Col1], 
[NEW_Col], --QUERY EXECUTES SUCCESSFULLY, BUT THIS IS UNDERLINED RED AS AN INVALID COLUMN 
[Col3] 
FROM [dbo].[MyTable] 
+1

Только что попробовал перезапуск и исправил его. Интересно, есть ли способ динамически очистить кэш SSMS 2008 после редактирования таблицы. Это похоже на то, что люди-люди могут часами тратить время на устранение неполадок. – kingrichard2005

+0

Вам не нужно перезапускать SSMS, чтобы исправить это. Держите эту статью удобной, одна из самых распространенных причин - SSMS просто недостаточно быстро обновляет локальный кеш метаданных. http://www.mssqltips.com/sqlservertip/2591/troubleshooting-intellisense-in-sql-server-management-studio-2012/ –

+0

Пожалуйста, объясните, почему предоставленные ответы неприемлемы для этого вопроса, так что их улучшения могут быть предоставлена. @AaronBertrand хорошие подсказки там! –

ответ

106
  • Нажмите CTRL + SHIFT + R
  • Перейти к Edit >> IntelliSense >> Обновить Local Cache
+7

Вы избавили меня от незначительной боли в голове – osaka

+0

Прошу прощения, я спрашиваю об этом здесь через год .. Я использую sql server 2000 ad У меня нет элемента управления CTRL + SHIFT + R или что-то, что называется IntelliSense, и я ' m получить ту же проблему. Любая идея? – Nejthe

+0

с благодарностью, меня озадачило какое-то время! –

11

В Sql Server, просто зайдите в Edit >> IntelliSense >> Обновить локальный кеш

+3

Как это добавляется к значению, указанному в предыдущем ответе? –

Смежные вопросы