首頁 >資料庫 >mysql教程 >如何使用 PowerShell 執行 SQL Server 查詢?

如何使用 PowerShell 執行 SQL Server 查詢?

DDD
DDD原創
2025-01-05 22:09:41233瀏覽

How Can I Execute SQL Server Queries Using PowerShell?

使用 PowerShell 執行 SQL Server 查詢

使用 SQL Server 資料庫時,通常需要直接從命令列執行查詢。 PowerShell 提供了一種強大的方法來實現此目的,使您能夠有效地管理資料庫操作。

使用 PowerShell 實作查詢執行

在 SQL Server 實例上執行查詢使用 PowerShell,您可以利用 System.Data.SqlClient 命名空間。以下是一個逐步函數,可以促進此過程:

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
}

用法

要使用此函數,只需指定資料來源、資料庫和SQL命令作為參數:

$results = Invoke-SQL -DataSource ".\SQLEXPRESS" -Database "Northwind" -SqlCommand "SELECT * FROM Customers"

查詢結果將儲存在$results變數中作為資料集。然後,您可以根據需要存取各個表和行。

其他資訊

  • 此函數利用 .NET System.Data.SqlClient 命名空間來啟用直接SQL Server 查詢執行。
  • 連接字串中的 Integrated Security=SSPI 參數使用目前的 Windows 驗證憑證連接到資料庫。
  • 函數使用 SqlDataAdapter 擷取查詢結果並填入 DataSet。
  • $adapter.Fill 呼叫末尾的 Out-Null 指令會抑制顯示資料填充過程的輸出。

以上是如何使用 PowerShell 執行 SQL Server 查詢?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn