Поделиться через


Устранение неполадок IntelliSense (SQL Server Management Studio)

Существуют некоторые случаи, когда параметры IntelliSense могут работать не так, как вы ожидаете.

Условия, влияющие на IntelliSense

Следующие условия могут повлиять на поведение IntelliSense:

  • Ошибка кода над курсором.

    Если существует неполная инструкция или другая ошибка кодирования над расположением точки вставки, IntelliSense может быть не удается проанализировать элементы кода и, следовательно, не будет работать. Вы можете закомментировать применимый код, чтобы включить IntelliSense еще раз.

  • Точка вставки находится внутри комментария кода.

    Параметры IntelliSense недоступны, если точка вставки находится в комментарии в исходном файле.

  • Точка вставки находится внутри строкового литерала.

    Параметры IntelliSense недоступны, если точка вставки находится внутри кавычек, окружающих строковый литерал, например:

    WHERE FirstName LIKE 'Patri%|'

  • Автоматические параметры отключены.

    Многие функции IntelliSense работают автоматически по умолчанию, но вы можете отключить любую функцию.

    Даже при отключении автоматического завершения инструкций можно использовать функцию IntelliSense. Дополнительные сведения см. в разделе Настройка IntelliSense (SQL Server Management Studio).

Запрос Ядра СУБД IntelliSense

Следующие проблемы относятся к редактору запросов ядра СУБД SQL Server:

  • Функции IntelliSense редактора запросов ядра СУБД не поддерживают все элементы синтаксиса Transact-SQL. Справка по параметрам не поддерживает параметры в некоторых объектах, таких как расширенные хранимые процедуры. Дополнительные сведения см. в Transact-SQL синтаксисе, поддерживаемом IntelliSense.

  • IntelliSense доступен только в том случае, если редактор запросов ядра СУБД подключен к экземпляру ядра СУБД из SQL Server 2008 или более поздней версии. IntelliSense недоступен, если редактор запросов подключен к более ранним версиям ядра СУБД.

  • IntelliSense отключен в редакторе запросов ядра СУБД при установке режима SQLCMD.

  • Функции IntelliSense не охватывают объекты базы данных, созданные другим подключением после подключения к базе данных в окне редактора. Если объекты отсутствуют из таких функций IntelliSense, как списки завершения, можно выбрать один из этих трех механизмов, чтобы обновить кэш объектов в окне редактора:

    • Выберите меню "Изменить", выберите IntelliSense, а затем выберите Обновить локальный кэш.

    • Используйте сочетание клавиш CTRL+SHIFT+R.

    • Отключите окно редактора от экземпляра ядра СУБД и повторно подключитесь.

  • Списки завершения не включают объекты базы данных, для которых у вас нет разрешений. Флаги IntelliSense помечают ссылки на объекты, для которых у вас есть разрешения. Например, если вы откроете скрипт, написанный другим человеком, то все ссылки на объекты, для которых у него есть разрешения, а у вас нет, будут помечены как неверные.

  • Списки завершения могут перестать работать, если вы потеряете подключение к экземпляру ядра СУБД. Повторно подключитесь к экземпляру.