Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

So bearbeiten Sie Linked-Server-Optionen mit T-SQL

Wenn Sie zuvor einen Verbindungsserver erstellt haben, nun aber eine oder mehrere seiner Serveroptionen aktualisieren möchten, können Sie dies entweder über die GUI von SQL Server Management Studio oder mit T-SQL tun.

Wenn Sie sich dafür entscheiden, dies mit T-SQL zu tun, wird die sp_serveroption system gespeicherte Prozedur ist das, was Sie brauchen.

Syntax

Die Syntax für sp_serveroption geht so:

sp_serveroption [@server = ] 'server'   
      ,[@optname = ] 'option_name'       
      ,[@optvalue = ] 'option_value' ;

Das erste Argument (@server ) ist der Name des Verbindungsservers.

Das zweite Argument (@optname ) gibt den Optionsnamen und das dritte Argument (@optvalue ) gibt seinen Wert an.

Beispiel 1 – Aktivieren Sie eine Option

Hier ist ein Beispiel für die Verwendung von sp_serveroption um eine Option auf einem Verbindungsserver zu aktivieren.

EXEC sp_serveroption 
    @server = 'Homer', 
    @optname = 'rpc out', 
    @optvalue = 'true';

Also setze ich in diesem Fall den rpc out Option auf true auf einem Verbindungsserver namens Homer .

Wie die Syntax schon sagt, können Sie die Parameternamen auch weglassen, etwa so:

EXEC sp_serveroption 'Homer', 'rpc out', 'true';

Überprüfen Sie die Einstellung

Wir können unsere RPC-Out-Einstellung überprüfen, indem wir die sys.servers abfragen ansehen.

SELECT 
    is_rpc_out_enabled
FROM sys.servers
WHERE name = 'Homer';

Ergebnis:

+----------------------+
| is_rpc_out_enabled   |
|----------------------|
| 1                    |
+----------------------+

Beispiel 2 – Eine Option deaktivieren

Hier ist ein Beispiel für das Deaktivieren einer Option auf einem Verbindungsserver.

EXEC sp_serveroption 
    @server = 'Homer', 
    @optname = 'rpc out', 
    @optvalue = 'false';

Also habe ich in diesem Fall einfach true geändert auf false .

Alternativ können Sie on verwenden und off falls bevorzugt.

Überprüfen Sie die Einstellung

Auch hier können wir unsere RPC-out-Einstellung mit dem folgenden Code überprüfen.

SELECT 
    is_rpc_out_enabled
FROM sys.servers
WHERE name = 'Homer';

Ergebnis:

+----------------------+
| is_rpc_out_enabled   |
|----------------------|
| 0                    |
+----------------------+

Verfügbare Optionen

Hier ist eine Liste von Optionsnamen, die Sie mit sp_serveroption konfigurieren können .

  • collation compatible
  • collation name
  • connect timeout
  • data access
  • dist
  • lazy schema validation
  • pub
  • query timeout
  • rpc
  • rpc out
  • sub
  • system
  • use remote collation
  • remote proc transaction promotion

Diese können auf true gesetzt werden oder false (oder off und on ). Beachten Sie jedoch, dass das connect timeout und query timeout Optionen können auf eine nicht negative ganze Zahl gesetzt werden. Der collation name Option kann ein Sortierungsname oder NULL sein .

Eine detaillierte Erläuterung dieser Optionen finden Sie in der Microsoft-Dokumentation.