"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Conseils pour exécuter directement les requêtes SQL dans PowerShell

Conseils pour exécuter directement les requêtes SQL dans PowerShell

Publié le 2025-04-15
Parcourir:554

How Can I Execute SQL Queries Directly from PowerShell?

Exécution des requêtes SQL de PowerShell sur votre machine locale

PowerShell offre la possibilité d'exécuter des requêtes SQL arbitraires sur une instance SQL Server. Cela peut être fait avec Just Stock .NET et PowerShell. Voici une fonction qui simplifie le processus:

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

}

Cette fonction vous oblige à spécifier la source de données (généralement votre nom de machine ou. \ SQLEXPRESS), le nom de la base de données, et la commande SQL que vous souhaitez exécuter.

Une fois que vous avez défini cette fonction avec les paramètres arbitraires appropriés. Par exemple, la commande suivante exécutera la requête "sélectionner * dans les clients" sur la base de données "MyDatabase" sur l'instance SQL Server locale:

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

PowerShell.

Cette fonction a été encore améliorée en un module PowerShell disponible sur github: https://github.com/chrismagnuson/invokesql. En installant ce module, vous pouvez charger automatiquement la fonction Invoke-SQL dans votre environnement PowerShell et l'utiliser de manière transparente sans avoir à le définir manuellement.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3