PowerShell連線 SQL Server 2005

edwardking888發表於2011-03-30

  [學習PowerShell可以做什麼][1][連線 SQL Server 2005] 收藏
有朋友問過我, 學習指令碼語言對開發人員有什麼用處, 還有一些開發人員看不起使用指令碼的技術人員. 這讓我想起了曹丕說過的"文人相輕", 如果不明白這句話請自己baidu一下.

有時候我們需要對一些檔案進行替換操作, 查詢一些特殊的關鍵字, 編寫DailyBuild指令碼(每日構建), Makefile檔案, 等等, 這些事情都可以用指令碼完成, 很多公司的AutoTest可能是使用類Unix系統的sh, csh, ksh或bash實現的. 很多人可以熟練的使用像awk, sed這些小工具, 還有人可以使用Perl等強大的指令碼命令完成像: 全域性替換版本號, 自動從原始碼伺服器簽出程式碼, 進行自動編譯, 自動進行一些測試, 並將上述操作的結果通過E-Mail發給相關的開發和測試工程師.

大公司往往會有專門的指令碼人才進行儲備, 進行一些快速開發, 指令碼相對於程式語言來說主要是編寫速度快, 實現很多工作更加快速.

PowerShell相比其他指令碼語言來說最大優點在於可以直接使用.Net提供的類庫, 這樣可以大大減輕程式設計師學習PowerShell的難度.

下面是一個簡單的連線SQL Server 2005的例子:

# 建立資料庫連線串
# Data Source 表示要連線的資料庫, tcp表示tcp協議, (local)表示連線本地資料庫
# Integrated Security 表示連線資料庫的認證方法, 我使用的是推薦的Windows Account Credential.
$SqlConn = [System.Data.SqlClient.SqlConnection] "Data Source=tcp:(local);Integrated Security=SSPI;"

# 開啟資料庫連線
$SqlConn.Open();

# 確認狀態
$SqlConn.State;

# 切換到資料庫 test
$SqlConn.ChangeDatabase('test');

# 確認切換到指定的資料庫
$SqlConn.Database;

# 建立一個繫結到此連線的SqlCommand物件, 你可以簡單想象SqlCommand就是你平時用的SQL企業管理器或任何可以執行SQL語句的工具
$CC = $SqlConn.CreateCommand();

# 設定我們要進行的查詢
$CC.CommandText = "SELECT 1"

# 因為這是一個標量結果, 因此呼叫ExecuteScalar即可
$CC.ExecuteScalar();
通過簡單的幾行程式碼, 我們就可以連線到資料庫, 進行一些簡單的操作.  我們下一次將會討論更加有用的指令碼, 如何使用PowerShell生成一些測試資料, 至於為什麼需要測試資料的問題, 我們下一次一併解釋.

 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/8183550/viewspace-691293/,如需轉載,請註明出處,否則將追究法律責任。

相關文章