Ausführung von SQL -Abfragen von PowerShell auf Ihrer lokalen Maschine
PowerShell bieten die Möglichkeit, beliebige SQL -Abfragen auf einer SQL -Serverinstanz auszuführen. Dies kann nur mit Aktien .NET und PowerShell erfolgen. Hier ist eine Funktion, die den Prozess vereinfacht:
function Invoke-SQL { param( [string] $dataSource = ".\SQLEXPRESS", [string] $database = "MasterData", [string] $sqlCommand = $(throw "Please specify a query.") ) $connectionString = "Data Source=$dataSource; " "Integrated Security=SSPI; " "Initial Catalog=$database" $connection = new-object system.data.SqlClient.SQLConnection($connectionString) $command = new-object system.data.sqlclient.sqlcommand($sqlCommand,$connection) $connection.Open() $adapter = New-Object System.Data.sqlclient.sqlDataAdapter $command $dataset = New-Object System.Data.DataSet $adapter.Fill($dataSet) | Out-Null $connection.Close() $dataSet.Tables }
Diese Funktion erfordert, dass Sie die Datenquelle (normalerweise Ihren Maschinennamen or. \ Sqlexpress), den Datenbanknamen und den Befehl SQL angeben, den Sie ausführen möchten. Zum Beispiel wird der folgende Befehl die Abfrage "SELECT * von Kunden" in der "myDatabase" -Datenbank in der lokalen SQL -Serverinstanz ausführen:
invoke -sql -database "mydatabase" -SQLCommand "ausgewählt * aus den Kunden"
Invoke-SQL -database "MyDatabase" -sqlCommand "SELECT * FROM Customers"
Diese Funktion wurde weiter zu einem PowerShell -Modul, das auf Github: https://github.com/chrismagnuson/invokesql verfügbar ist. Durch die Installation dieses Moduls können Sie die Funktion "Invoke-SQL" automatisch in Ihre PowerShell-Umgebung laden und sie nahtlos verwenden, ohne sie manuell zu definieren.
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3