■ 北京 苑進良
編者按:PowerShell是構建于.NET上基于任務的命令行Shell和腳本語言,它可以幫助系統(tǒng)管理員快速自動執(zhí)行用于管理操作系統(tǒng)的任務。本文筆者介紹了如何使用PowerShelL管理SQL Server,實現(xiàn)與SQL Serve的數(shù)據(jù)交互。
首先我們可以通過圖1所示腳本去檢查SQL Server模塊是否已經被安裝和加載到PowerShell中。如果沒有,腳本中的Install-Module和Import-Module命令會完成安裝和加載的操作。
SQL Server模塊加載完成之后,我們需要以下變量進行賦值:
接下來我們可以使用G et-SQLDatabase去查看現(xiàn)有的數(shù)據(jù)庫:
使用Invoke-Sqlcmd去獲取數(shù)據(jù)庫中相應列表的數(shù)據(jù):
使用Invoke-sqlcmd寫入數(shù)據(jù)到數(shù)據(jù)庫:
圖1 檢查腳本
使用Invoke-sqlcmd清除數(shù)據(jù)庫列表內容:
大家一定注意到針對執(zhí)行操作的不同,$SQL變量里的SQL語句是不一樣的。
我們只需要把需要進行的操作用SQL語句賦給這個變量然后執(zhí)行Invoke-Sqlcmd這個PowerShell命令就可以輕松實現(xiàn)對數(shù)據(jù)庫的增刪改查。
另外為了便于使用,大家也可以把不同的操作寫成PowerShell Fuction。這樣,我們就可以通過調用Fucntion來便利的進行數(shù)據(jù)庫的操作了。
比如,PowerShell Funct ion就是用來進行數(shù)據(jù)庫查詢的。我們可以使用”Get-SQLQuery–Database$SQLDatabase–Table$Table”來獲取相應數(shù)據(jù)庫中列表的數(shù)據(jù)。