Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Uruchom SERVERPROPERTY() na połączonym serwerze w SQL Server

Jeśli potrzebujesz uruchomić SERVERPROPERTY() funkcji na serwerze połączonym w programie SQL Server, można użyć zapytania przekazującego. Aby to zrobić, przekaż SERVERPROPERTY() funkcja jako drugi argument OPENQUERY() funkcja (pierwszy argument to nazwa połączonego serwera).

Przykład 1 – Przykład podstawowy

Oto przykład.

SELECT * FROM OPENQUERY(
    Homer,
    'SELECT SERVERPROPERTY(''ProductLevel'') AS [Remote ProductLevel];'
);

Wynik:

+-----------------------+
| Remote ProductLevel   |
|-----------------------|
| RTM                   |
+-----------------------+

Przykład 2 – w porównaniu z zapytaniem lokalnym

Aby potwierdzić, że w rzeczywistości pochodziło to z serwera połączonego (a nie z serwera lokalnego), oto znowu, wraz z zapytaniem do serwera lokalnego.

SELECT SERVERPROPERTY('ProductLevel') AS [Local ProductLevel];

SELECT * FROM OPENQUERY(
    Homer,
    'SELECT SERVERPROPERTY(''ProductLevel'') AS [Remote ProductLevel];'
);

Wynik:

+----------------------+
| Local ProductLevel   |
|----------------------|
| CTP3.2               |
+----------------------+
(1 row affected)
+-----------------------+
| Remote ProductLevel   |
|-----------------------|
| RTM                   |
+-----------------------+
(1 row affected)

W takim przypadku na serwerze lokalnym działa wersja zapoznawcza programu SQL Server 2019, a na serwerze połączonym działa program SQL Server 2017. RTM oznacza, że ​​jest to oryginalna wersja wydania, podczas gdy CTPn oznacza, że ​​jest to wersja Community Technology Preview.

Zobacz Szybki skrypt, który zwraca wszystkie właściwości z SERVERPROPERTY() w programie SQL Server 2017/2019, jeśli potrzebujesz skryptu, który zwraca wszystkie właściwości.

Zobacz także dokumentację firmy Microsoft, aby uzyskać pełną listę argumentów akceptowanych przez tę funkcję.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Co oznacza ORDER BY (WYBIERZ NULL)?

  2. Właściwy sposób na zaimplementowanie unikalnego ograniczenia, które pozwala na wiele wartości NULL w SQL Server

  3. Jak zmienić model odzyskiwania bazy danych SQL Server za pomocą T-SQL

  4. Pakiet dostrajania Spotlight Basic:najlepsze bezpłatne narzędzie do optymalizacji SQL

  5. Jak podzielić ciąg znaków za pomocą ogranicznika za pomocą T-SQL?