ホームページ > データベース > mysql チュートリアル > PowerShell から SQL クエリを直接実行するにはどうすればよいですか?

PowerShell から SQL クエリを直接実行するにはどうすればよいですか?

DDD
リリース: 2025-01-05 20:10:40
オリジナル
288 人が閲覧しました

How Can I Execute SQL Queries Directly from PowerShell?

ローカル マシン上の PowerShell からの SQL クエリの実行

PowerShell は、SQL Server インスタンス上で任意の SQL クエリを実行する機能を提供します。これは、標準の .NET と PowerShell だけで実行できます。プロセスを簡素化する関数を次に示します。

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

}
ログイン後にコピー

この関数では、データ ソース (通常はマシン名または .SQLEXPRESS)、データベース名、および実行する SQL コマンドを指定する必要があります。

この関数を定義すると、適切なパラメーターを指定して Invoke-SQL を呼び出すことで、PowerShell 内から任意のクエリを実行できます。たとえば、次のコマンドは、ローカル SQL Server インスタンスの "MyDatabase" データベースに対してクエリ "SELECT * FROM Customers" を実行します。

Invoke-SQL -database "MyDatabase" -sqlCommand "SELECT * FROM Customers"
ログイン後にコピー

これにより、クエリの結果を含むデータセットが返されます。これを PowerShell で操作できるようになります。

この機能はさらに強化され、GitHub で利用できる PowerShell モジュールになりました。 https://github.com/ChrisMagnuson/InvokeSQL。このモジュールをインストールすると、Invoke-SQL 関数を PowerShell 環境に自動的にロードし、手動で定義することなくシームレスに使用できるようになります。

以上がPowerShell から SQL クエリを直接実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート