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


sys.sp_rda_set_query_mode (Transact-SQL)

Область применения: SQL Server 2016 (13.x) и более поздних версий

Указывает, возвращаются ли запросы к текущей базе данных с поддержкой Stretch и ее таблицам как локальные, так и удаленные (по умолчанию) или локальные данные.

Важно!

Stretch Database устарел в SQL Server 2022 (16.x) и База данных SQL Azure. Эта функция будет удалена в будущей версии ядро СУБД. Избегайте использования этого компонента в новых разработках и запланируйте изменение существующих приложений, в которых он применяется.

Соглашения о синтаксисе Transact-SQL

Синтаксис

sp_rda_set_query_mode
    [ @mode = ] @mode
    [ , [ @force = ] @force ]
[ ; ]

Аргументы

[ @mode = ] @mode

Одно из следующих значений:

  • DISABLED Все запросы к таблицам с поддержкой Stretch завершаются ошибкой.

  • LOCAL_ONLY Запросы к таблицам с поддержкой Stretch возвращают только локальные данные.

  • LOCAL_AND_REMOTE Запросы к таблицам с поддержкой Stretch возвращают локальные и удаленные данные. Это поведение принимается по умолчанию.

[ @force = ] @force

Необязательное битовое значение, которое можно задать в значение 1, если вы хотите изменить режим запроса без проверки.

Значения кода возврата

0 (успешно) или > 0 (сбой).

Разрешения

Требуется db_owner разрешения.

Замечания

Следующие расширенные хранимые процедуры также задают режим запроса для базы данных с поддержкой Stretch.

  • sp_rda_deauthorize_db:

    После запуска все запросы к базам данных и таблицам с поддержкой Stretch завершаются sp_rda_deauthorize_db сбоем. То есть для режима запроса задано значение DISABLED. Чтобы выйти из этого режима, выполните одно из следующих действий.

    • Запустите sys.sp_rda_reauthorize_db (Transact-SQL), чтобы повторно подключиться к удаленной базе данных Azure. Эта операция автоматически сбрасывает режим LOCAL_AND_REMOTEзапроса в режим, который является поведением по умолчанию для Stretch Database. То есть запросы возвращают результаты как локальных, так и удаленных данных.

    • Запустите sys.sp_rda_set_query_mode с аргументом LOCAL_ONLY , чтобы запросы продолжали выполняться только для локальных данных.

  • sp_rda_reauthorize_db:

    При запуске sys.sp_rda_reauthorize_db (Transact-SQL) для повторного подключения к удаленной базе данных Azure эта операция автоматически сбрасывает режим LOCAL_AND_REMOTEзапроса в режим, который является поведением по умолчанию для Stretch Database. То есть запросы возвращают результаты как локальных, так и удаленных данных.