有時候在某些主機會需要確認資料庫能不能連線,但在 Web Server 上又不方便裝 SQL Server Management Studio (SSMS),同事建議我可以用 PowerShell 連線確認。如果有錯誤訊息,就表示某個地方出問題了;如果沒有印出任何訊息就回到命令提示字元,那就表示連得上。這樣 debug 方便很多!
# 連線字串
$connectionString = 'Data Source=127.0.0.1;database=testdb;User ID=testuser;Password=testpwd'
$sqlConnection = New-Object System.Data.SqlClient.SqlConnection $connectionString
# 建立連線
$sqlConnection.Open()
完整一點的話可以這樣做。
# 連線字串
$connectionString = 'Data Source=127.0.0.1;database=testdb;User
ID=testuser;Password=testpwd'
$sqlConnection = New-Object System.Data.SqlClient.SqlConnection $connectionString
# 建立連線
$sqlConnection.Open()
$sqlCmd = New-Object System.Data.SqlClient.SqlCommand
$sqlCmd.Connection = $sqlConnection
# 取回指定 table 資料
$query = "SELECT @@VERSION"
$sqlCmd.CommandText = $query
$data = New-Object System.Data.DataSet
$sqlAdapter = New-Object System.Data.SqlClient.SqlDataAdapter
$sqlAdapter.SelectCommand = $sqlCmd
$dataSet = New-Object System.Data.DataSet
$sqlAdapter.Fill($dataSet)
# 關閉資料庫連線
$sqlConnection.Close()
# 印出資料表內容
$dataSet.Tables[0]
打完收工~
留言列表