Heim >Datenbank >MySQL-Tutorial >Wie kann ich SQL-Abfragen direkt aus PowerShell ausführen?

Wie kann ich SQL-Abfragen direkt aus PowerShell ausführen?

DDD
DDDOriginal
2025-01-05 20:10:40284Durchsuche

How Can I Execute SQL Queries Directly from PowerShell?

SQL-Abfragen von PowerShell auf Ihrem lokalen Computer ausführen

PowerShell bietet die Möglichkeit, beliebige SQL-Abfragen auf einer SQL Server-Instanz auszuführen. Dies kann nur mit Standard-.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

}

Für diese Funktion müssen Sie die Datenquelle (normalerweise Ihren Computernamen oder .SQLEXPRESS), den Datenbanknamen und den SQL-Befehl angeben, den Sie ausführen möchten.

Sobald Sie diese Funktion definiert haben, können Sie beliebige Abfragen in PowerShell ausführen, indem Sie Invoke-SQL mit den entsprechenden Parametern aufrufen. Der folgende Befehl führt beispielsweise die Abfrage „SELECT * FROM Customers“ in der Datenbank „MyDatabase“ auf der lokalen SQL Server-Instanz aus:

Invoke-SQL -database "MyDatabase" -sqlCommand "SELECT * FROM Customers"

Dadurch wird ein Datensatz zurückgegeben, der die Ergebnisse der Abfrage enthält. mit dem Sie dann in PowerShell arbeiten können.

Diese Funktion wurde weiter zu einem PowerShell-Modul erweitert, das auf GitHub verfügbar ist: https://github.com/ChrisMagnuson/InvokeSQL. Durch die Installation dieses Moduls können Sie die Invoke-SQL-Funktion automatisch in Ihre PowerShell-Umgebung laden und nahtlos verwenden, ohne sie manuell definieren zu müssen.

Das obige ist der detaillierte Inhalt vonWie kann ich SQL-Abfragen direkt aus PowerShell ausführen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn