Za pomocą polecenia polecenie Wywołaj-Sqlcmd
Wywołać polecenie Sqlcmd jest SQL Server cmdlet, który uruchamia skrypty zawierające instrukcje z języków (Transact-SQL i XQuery) i poleceń, które są obsługiwane przez polecenie sqlcmd narzędzia.
Za pomocą wywołać polecenie Sqlcmd
Polecenie Wywołaj-Sqlcmd aplet polecenia umożliwia uruchamianie programu polecenie sqlcmd skryptów plików w środowisku Windows PowerShell.Ilość co można zrobić z polecenie sqlcmd , można również wykonać stosując Polecenie Wywołaj-Sqlcmd.
Jest to przykładowe polecenie wywołanie Invoke-Sqlcmd do wykonać prostych kwerend podobne do określania polecenie sqlcmd z -Q i -S opcje:
Invoke-Sqlcmd -Query "SELECT GETDATE() AS TimeOfQuery;" -ServerInstance "MyComputer\MyInstance"
Jest to przykład telefonicznej Polecenie Wywołaj-Sqlcmd, określając plik wejściowy i połączeń rurowych dane wyjściowe do pliku jest podobne do określania polecenie sqlcmd z -i i -o opcje:
Invoke-Sqlcmd -InputFile "C:\MyFolder\TestSQLCmd.sql" | Out-File -filePath "C:\MyFolder\TestSQLCmd.rpt"
Jest to przykład użycia tablicy Windows PowerShell do przekazywania wielu polecenie sqlcmd wykonywanie skryptów zmienne Polecenie Wywołaj-Sqlcmd."$" znaki identyfikacyjne polecenie sqlcmd wykonywanie skryptów zmiennych w instrukcja SELECT została wyjściowym przy użyciu PowerShell back-tick "" " znak anulowania:
$MyArray = "MyVar1 = 'String1'", "MyVar2 = 'String2'"
Invoke-Sqlcmd -Query "SELECT `$(MyVar1) AS Var1, `$(MyVar2) AS Var2;" -Variable $MyArray
Jest to przykład użycia SQL Server dostawca środowiska Windows PowerShell przejść do wystąpienie Aparat baz danychi przy użyciu środowiska Windows PowerShell Elementu Get polecenia pobrać obiektu SMO serwera dla wystąpienie i przekazanie go do Polecenie Wywołaj-Sqlcmd:
Set-Location SQLSERVER:\SQL\MyComputer\MyInstance
Invoke-Sqlcmd -Query "SELECT GETDATE() AS TimeOfQuery;" -ServerInstance (Get-Item .)
-Kwerenda parametr jest pozycyjne i nie musi być nazwane.Jeżeli pierwszy ciąg, który jest przekazywany do Polecenie Wywołaj-Sqlcmd: jest nienazwanych, jest ona traktowana jako parametr kwerendy.
Invoke-Sqlcmd "SELECT GETDATE() AS TimeOfQuery;" -ServerInstance "MyComputer\MyInstance"
Kontekst ścieżki w wywołać polecenie Sqlcmd
Jeśli nie używasz parametr bazy danych, polecenie Sqlcmd Invoke kontekst bazy danych jest zestaw przez ścieżka, która jest aktywna, gdy nosi nazwę polecenia.
Path |
Kontekstu bazy danych |
---|---|
Zostanie uruchomiony z dysku innego niż SQLSERVER: |
domyślna baza danych dla identyfikator logowania w wystąpienie domyślne na komputerze lokalnym. |
SQLSERVER:\SQL |
domyślna baza danych dla identyfikator logowania w wystąpienie domyślne na komputerze lokalnym. |
SQLSERVER:\SQL\ComputerName |
domyślna baza danych dla identyfikator logowania w wystąpienie domyślne na określonym komputerze. |
SQLSERVER:\SQL\ComputerName\InstanceName |
Domyślna baza danych dla określonego identyfikator logowania wystąpienie na określonym komputerze. |
SQLSERVER:\SQL\ComputerName\InstanceName\Databases |
Domyślna baza danych dla określonego identyfikator logowania wystąpienie na określonym komputerze. |
SQLSERVER:\SQL\ComputerName\InstanceName\Databases\DatabaseName |
Określonej bazy danych określonego wystąpienie na określonym komputerze.Dotyczy to również dłuższe ścieżki, takie jak ścieżka, która określa węzeł tabel i kolumn w bazie danych. |
Na przykład załóżmy, że domyślna baza danych dla konta systemu Windows w wystąpienie domyślne komputera lokalnego jest master.Następnie zwróciłby następujące polecenia master:
Set-Location SQLSERVER:\SQL
Invoke-Sqlcmd "SELECT DB_NAME() AS DatabaseName;"
Zwróciłby następujące polecenia AdventureWorks2008R2:
Set-Location SQLSERVER:\SQL\MyComputer\DEFAULT\Databases\AdventureWorks2008R2\Tables\Person.Person
Invoke-Sqlcmd "SELECT DB_NAME() AS DatabaseName;"
Wywołać polecenie Sqlcmd zawiera ostrzeżenie, gdy korzysta z kontekstu ścieżka bazy danych.Aby wyłączyć komunikat ostrzegawczy, można użyć parametru - SuppressProviderContextWarning.Za pomocą parametru - IgnoreProviderContext stwierdzić, wywołaj polecenie Sqlcmd zawsze używać domyślna baza danych dla logowania.
Porównanie polecenie Sqlcmd Invoke i polecenie sqlcmd, narzędzie
Wywołać polecenie Sqlcmd można uruchamiać wiele skryptów, które mogą być uruchamiane za pomocą polecenie sqlcmd narzędzia.Jednakże Polecenie Wywołaj-Sqlcmd jest uruchamiany w środowisku Windows PowerShell, który jest inny niż środowisko wiersz polecenia, polecenie sqlcmd jest uruchamiany w.Zachowanie Polecenie Wywołaj-Sqlcmd został zmodyfikowany do pracy w środowisku Windows PowerShell.
Nie wszystkie polecenie sqlcmd polecenia są wykonywane w Polecenie Wywołaj-Sqlcmd.Następujące polecenia, które nie zostały zaimplementowane: :!!, :connect, :error, :out, :ed, :list, :listvar, :reset, :perftrace, and :serverlist.
Wywołać polecenie Sqlcmd nie inicjuje polecenie sqlcmd środowiska lub wykonywanie skryptów zmiennych, takich jak SQLCMDDBNAME lub SQLCMDWORKSTATION.
Wywołać polecenie Sqlcmd nie są wyświetlane wiadomości, takie jak dane wyjściowe Drukuj wyciągi, chyba że zostanie Windows PowerShell -Verbose wspólnych parametrów.Na przykład:
Invoke-Sqlcmd -Query "PRINT N'abc';" -Verbose
Nie wszystkie polecenie sqlcmd parametry są potrzebne w środowisku PowerShell.Na przykład Windows PowerShell formatuje wszystkie dane wyjściowe poleceń, tak polecenie sqlcmd parametry określania opcji formatowania nie są implementowane w Polecenie Wywołaj-Sqlcmd.W tabela follwoing przedstawiono relacje między Polecenie Wywołaj-Sqlcmd parametry i polecenie sqlcmd opcje:
Opis |
Opcja polecenie SQLCMD |
Parametr wywołać polecenie Sqlcmd |
---|---|---|
Serwer i wystąpienie nazwy. |
-S |
-ServerInstance |
Początkowe bazę danych do użycia. |
-d |
-Bazy danych |
Uruchomienie kwerendy i Zakończ. |
-Q |
-Query |
SQL Server identyfikator logowania uwierzytelniania logowania. |
-U |
-Username |
SQL ServerUwierzytelnianie hasła. |
-P |
-Hasło |
Definicja zmiennej. |
-v |
-Zmienna |
Interwał limitu czasu kwerendy. |
-t |
-QueryTimeout |
Zatrzymać uruchomione na błąd |
-b |
-AbortOnError |
Dedykowanego połączenia administratora. |
-A |
-DedicatedAdministratorConnection |
Wyłącz poleceń interakcyjnych, skrypt uruchamiania i zmienne środowiskowe. |
-X |
-DisableCommands |
Wyłączyć podstawianie zmiennych. |
-x |
-DisableVariables |
Poziom minimalny wskaźnik do raportu. |
-V |
-SeverityLevel |
Błąd minimalny poziom do raportu. |
-m |
-ErrorLevel |
Interwał limitu czasu logowania. |
-l |
-ConnectionTimeout |
Nazwa hosta. |
-H |
-HbostName |
Zmienianie hasła i Zakończ. |
-Z |
-NoweHasło |
Plik wejściowy zawierający kwerendę |
-i |
-Plik_wejściowy |
Maksymalna długość znaku. |
-w |
-MaxCharLength |
Maksymalna długość formatu binarnego. |
-w |
-MaxBinaryLength |
Połącz przy użyciu szyfrowanie SSL. |
Brak parametru |
-EncryptConnection |
Wyświetl błędy |
Brak parametru |
-OutputSqlErrors |
Komunikaty wyjściowe do obiektu stderr. |
-r |
Brak parametru |
Użyj ustawień regionalnych klient |
-R |
Brak parametru |
Uruchomić określonej kwerendy i działają. |
-q |
Brak parametru |
Strona kodowa dla danych wyjściowych. |
-f |
Brak parametru |
Zmiana hasła i działają |
-z |
Brak parametru |
Rozmiar pakietu |
- |
Brak parametru |
Separator kolumny |
-s |
Brak parametru |
Nagłówki wyników kontroli |
-h |
Brak parametru |
Określa znaki kontrolne |
-k |
Brak parametru |
Stała długość, szerokość ekranu |
-Y |
Brak parametru |
Wyświetlacz o zmiennej długości |
-y |
Brak parametru |
Echo wprowadzania |
-e |
Brak parametru |
Włącz identyfikatorów w cudzysłowach |
- |
Brak parametru |
Usuń spacje końcowe |
-W |
Brak parametru |
Wystąpienia listy |
-L |
Brak parametru |
Formatowanie danych wyjściowych w formacie Unicode |
-u |
Brak parametru |
Drukowanie statystyk |
-p |
Brak parametru |
Polecenie zakończenia |
-c |
Brak parametru |
Połącz przy użyciu uwierzytelniania systemu Windows |
-E |
Brak parametru |
Zobacz także