SQLCMD czyli łączymy się do zdalnego serwera SQL

Często podczas tworzenia zapytań musimy skorzystać z danych znajdujących się na jakimś innym serwerze SQL. Z reguły wykonujemy połączenie za pomocą Management Studio wykonujemy zapytanie a następnie wracamy do naszego serwera na którym obecnie pracujemy. Aby ułatwić pracę w Management Studio utworzono funkcję SQLCMD. Najpierw musimy ją uruchomić. Aby to zrobić otwieramy nowe okno Query a następnie z górnego menu Query wybieramy SQLCMD MODE.

Nim uruchomimy ten tryb zapytania korzystające z tej funkcji będą zwracać błędy

Po uruchomieniu zostaną one podświetlone kolorem szarym.

Jak już uruchomiliśmy nasze SQLCMD możemy próbować podłączyć się do serwera.
Polecenie

:connect localhost

spowoduje połączenie się do lokalnego serwera (tak jakbyśmy wykonywali zwykłego selecta bez włączania SQLCMD.

Polecenie

:CONNECT SQLSERVER1\INSTANCE1

Łączy się do serwera SQLSERVER1 do instancji INSTANCE1
Możemy po tym poleceniu wpisać np. jakiegoś selecta który wykona się właśnie na tym serwerze i jego bazach

Jeśli chcemy użyć uwierzytelnienia za pomocą konta i hasła w bazie danych wykonujemy:

:CONNECT SQLSERVER1 -U MyLoginName -P MyPassword

Jeśli chcemy wykonać polecenie w systemie operacyjnym np wyświetlić zawartość folderu wpisujemy

!!DIR
!!:GO

lub

!!%SystemRoot%\system32\cmd.exe /c dir c:\
!!:GO

Wykonanie selecta wygląda podobnie

!!sqlcmd /Q "exit(SELECT COUNT(*) FROM [Northwind].[dbo].[Employees])"

Niedługo podam jeszcze kilka innych przykładów. CDN… 🙂

Ten wpis został opublikowany w kategorii Microsoft SQL. Dodaj zakładkę do bezpośredniego odnośnika.

Dodaj komentarz