本節書摘來自異步社群出版社《powershell v3—sql server 2012資料庫自動化運維權威指南》一書中的第2章,第2.1節,作者:【加拿大】donabel santos,更多章節内容可以通路雲栖社群“異步社群”公衆号檢視。
powershell v3——sql server 2012資料庫自動化運維權威指南
本章介紹使用powershell完成一些基本的sql server任務的腳本和代碼片段。我們将從簡單任務開始,例如,列出sql server執行個體,建立對象,如表、索引、存儲過程和函數,讓你輕松以程式設計方式使用sql server。
你會發現一些使用powershell和sql管理對象(sql management object,smo)的方法。smo提供了很多sql server類,允許以程式設計方式操作,使一些資料庫任務自動化。對于一些方法,我們也将會探究使用不同的本地powershell cmdlets來完成相同任務的不同方法。
雖然我們在探究如何使用powershell建立一些常用的資料庫對象,但是我們會注意到,powershell并不總是完成任務的最好工具。有些任務最好使用t-sql來完成。即便如此,了解使用powershell可以做什麼和如何做仍然是好的,是以,你知道依賴于你的需求和環境的替代方案。
這些方案使用的開發環境的配置如下:

為簡化練習,在你的環境中以管理者帳号運作powershell腳本。此外,確定該帳号在你工作的伺服器上有完全通路sql server執行個體的權限。
我們将在此任務中的所有腳本使用powershell ise。你需要記住一些事情。
腳本窗格(script pane)是輸入powershell代碼的地方。輸出窗格(output pane)是看到結果的地方。
指令窗格(command pane)輸入即時查詢指令的地方,隻要你按enter鍵立即執行。
在我們的方案中,我們将使用腳本窗格(script pane)來書寫和執行腳本。根據任務,你可能需要做以下操作之一:
單擊“運作腳本”(run script)按鈕(綠色箭頭),運作腳本的所有代碼。
單擊它旁邊的“運作選擇的腳本”(run selection)按鈕,隻運作高亮顯示的代碼。
如果你更喜歡使用powershell控制台運作腳本而不是使用ise,你可以按照如下步驟操作。
1.以擴充名.ps1儲存檔案。
2.通過“start | accessories | windows powershell | windows powershell”打開powershell控制台。
3.我們可能希望運作本地建立的腳本。為了這樣做,我們需要将“執行政策”(executionpolicy)設定為remotesigned。
4.設定執行政策為remotesigned。
5.你可以從如下選項中挑選。
修改路徑到腳本存儲位置并調用腳本。
使用完整識别路徑去運作.ps1檔案。
如果你想在整個會話中在腳本中保留函數和變量,你可以使用點号加載檔案。