Freigeben über


sys.sp_rda_set_query_mode (Transact-SQL)

Gilt für: SQL Server 2016 (13.x) und höhere Versionen

Gibt an, ob Abfragen für die aktuelle Stretch-fähige Datenbank und die zugehörigen Tabellen lokale und Remotedaten (Standard) oder lokale Daten zurückgeben.

Wichtig

Stretch Database ist in SQL Server 2022 (16.x) und der Azure SQL-Datenbank veraltet. Diese Funktion wird in einer zukünftigen Version der Datenbank-Engine entfernt. Nutzen Sie diese Funktionen bei Neuentwicklungen nicht mehr, und planen Sie die Änderung von Anwendungen, die diese Funktion zurzeit verwenden.

Transact-SQL-Syntaxkonventionen

Syntax

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

Argumente

[ @mode = ] @mode

Einer der folgenden Werte:

  • DISABLED Alle Abfragen für Stretch-fähige Tabellen schlagen fehl.

  • LOCAL_ONLY Abfragen für Stretch-fähige Tabellen geben nur lokale Daten zurück.

  • LOCAL_AND_REMOTE Abfragen für Stretch-fähige Tabellen geben sowohl lokale als auch Remotedaten zurück. Dies ist die Standardeinstellung.

[ @force = ] @force

Ein optionaler Bitwert , den Sie auf 1 festlegen können, wenn Sie den Abfragemodus ohne Überprüfung ändern möchten.

Rückgabecodewerte

0 (erfolgreich) oder > 0 Fehler.

Berechtigungen

Erfordert db_owner-Berechtigungen.

Hinweise

Die folgenden erweiterten gespeicherten Prozeduren legen auch den Abfragemodus für eine Stretch-fähige Datenbank fest.

  • sp_rda_deauthorize_db:

    Nach der Ausführung schlagen sp_rda_deauthorize_db alle Abfragen für Stretch-aktivierte Datenbanken und Tabellen fehl. Das heißt, der Abfragemodus ist auf DISABLED. Führen Sie einen der folgenden Schritte aus, um diesen Modus zu beenden.

    • Führen Sie sys.sp_rda_reauthorize_db (Transact-SQL) aus, um eine erneute Verbindung mit der Azure-Remotedatenbank herzustellen. Mit diesem Vorgang wird der Abfragemodus automatisch auf LOCAL_AND_REMOTEdas Standardverhalten für Stretch-Datenbank zurückgesetzt. Das heißt, Abfragen geben Ergebnisse aus lokalen und Remotedaten zurück.

    • Führen Sie sys.sp_rda_set_query_mode mit dem LOCAL_ONLY Argument aus, damit Abfragen nur für lokale Daten ausgeführt werden können.

  • sp_rda_reauthorize_db:

    Wenn Sie sys.sp_rda_reauthorize_db (Transact-SQL) ausführen, um eine erneute Verbindung mit der Azure-Remotedatenbank herzustellen, setzt dieser Vorgang automatisch den Abfragemodus zurückLOCAL_AND_REMOTE, was das Standardverhalten für Stretch-Datenbank ist. Das heißt, Abfragen geben Ergebnisse aus lokalen und Remotedaten zurück.