SQL Abfrage mit PowerShell
Windows PowerShell ist inzwischen schon sehr mächtig. Unter anderem ist es möglich eine SQL Abfrage mit PowerShell abzusetzen, ohne das SQL Server Modul zu installieren. SQL ist eine Datenbanksprache, welche in der heutigen Zeit kaum mehr wegzudenken ist. Alle komplexeren Softwaresysteme oder Webserver verwenden im Hintergrund Datenbanken. Um nun Datensätze aus der Datenbank zu lesen, oder andere SQL Querys abzusetzen, kann Windows PowerShell verwendet werden. Wie man SQL Abfragen mit PowerShell absetzen kann, lest ihr in diesem Beitrag.
SQL Abfrage mit PowerShell
Mit der Hilfe dieser kleinen PowerShell Funktion kann ganz einfach ein SQL Query, beziehungsweise eine SQL Abfrage mit PowerShell abgesetzt werden. Hierzu wird eine Funktion namens “Perform-SQL” gebaut, mit der sich dann ein Befehl absetzen lässt.
# Beispiel 1 (auth integriert): Perform-SQL -sqlhost 192.168.10.20\instanzname -DB YOURDATABASE -sqlQuery 'Select * from yourdatabase' # Beispiel 2 (auth mit user + passwort): Perform-SQL -sqlhost 192.168.10.20\instanzname -DB YOURDATABASE -user YOURUSER -password YOURPASSWORD -sqlQuery 'Select * from yourdatabase' function Perform-SQL { Param( [string]$sqlHost, [string]$DB, [string]$SqlQuery, [string]$User, [string]$Password ) if (($User) -and ($Password)) { $connectionParam = "Data Source=$sqlHost;User ID=$User;Password=$Password;Initial Catalog=$DB" } else { $connectionParam = "Data Source=$sqlHost;Integrated Security=SSPI;Initial Catalog=$DB" } $sqlconnection = new-object system.data.SqlClient.SQLConnection($connectionParam) $command = new-object system.data.sqlclient.sqlcommand($sqlQuery,$sqlconnection) $sqlconnection.Open() $sqlDataAdapter = New-Object System.Data.sqlclient.sqlDataAdapter $command $dataset = New-Object System.Data.DataSet $sqlDataAdapter.Fill($dataSet) | Out-Null $sqlconnection.Close() $dataSet.Tables }
Natürlich müssen nach dem “Perform-SQL” Kommando noch weitere Parameter übergeben werden:
- -Host
- -DB (database)
- -user
- -password
- -sqlQuery
Nach dem Parameter “-sqlQuery” folgt der eigentliche SQL Befehl, der abgesetzt werden soll. In Zeile 01-05 habe ich zwei Beispiele für euch, wie eine solche SQL Abfrage mit PowerShell gemacht werden kann. Ich hoffe wir konnten euch weiterhelfen! 🙂
Auch interessant?!
Wordpress SQL Befehle