Использование параметров в СУБД SQL Server

В Microsoft SQL Server 2005 предусмотрены параметры, которые влияют на результат и производительность инструкций SQL. Эти параметры можно задать следующими способами.

  • Чтобы задать параметры конфигурации для всего экземпляра, воспользуйтесь хранимой процедурой sp_configure.
  • Чтобы задать параметры на уровне базы данных, используйте инструкцию ALTER DATABASE.
  • Чтобы задать уровень совместимости базы данных, используйте хранимую процедуру sp_dbcmptlevel.
  • Чтобы указать параметры на уровне пакета (параметры инструкции SET), используйте такие инструкции SET, как SET ANSI_PADDING и SET ANSI_NULLS.
    ms191203.note(ru-ru,SQL.90).gifПримечание.
    Параметры уровня пакета в более ранних версиях SQL Server, а также в подключениях без использования режима MARS называются параметрами уровня подключения.
  • Чтобы указать параметры на уровне инструкций (такие, как подсказки запросов, таблиц и соединений), используйте отдельные инструкции языка Transact-SQL. Дополнительные сведения см. в разделе Подсказки (Transact-SQL).

Приложения ODBC могут задавать особые параметры соединения, которые управляют некоторыми параметрами ANSI SET. И поставщик OLE DB для собственного клиента SQL, и ODBC-драйвер собственного клиента SQL задают некоторые параметры SET по умолчанию.

По возможности лучше не изменять параметры SET или задавать их с помощью инструкций SET. Вместо этого рекомендуется задавать параметры SET на уровне соединения через свойства соединения ODBC или OLE DB. Параметр SET можно также изменить с помощью хранимой процедуры sp_configure.

Процедура sp_configure имеет параметр user options. Это позволяет изменять значения по умолчанию некоторых параметров SET. Хотя user options кажется параметром экземпляра, user options — параметр SET.

Иерархия параметров

Если параметр поддерживается на нескольких уровнях, используется следующая иерархия.

  1. Параметр базы данных имеет приоритет над параметром экземпляра.
  2. Параметр SET имеет приоритет над параметром базы данных.
  3. Подсказка имеет приоритет над параметром SET.
ms191203.note(ru-ru,SQL.90).gifПримечание.
Параметры SET, заданные внутри динамического пакета SQL, действуют только в области этого пакета.
ms191203.note(ru-ru,SQL.90).gifПримечание.
Такие параметры SET, как QUOTED_IDENTIFIER и ANSI_NULLS, сохраняются вместе с определениями хранимых процедур и, следовательно, имеют приоритет над различными значениями, явно заданными для них.

См. также

Основные понятия

Параметры SET
Параметры базы данных
Параметры экземпляра
Параметр Database Compatibility Level

Справка и поддержка

Получение помощи по SQL Server 2005