2010年11月3日

使用 Windows PowerShell 將資料匯出成 .html 檔案(含安裝 SQLPSX 模組教學)

CodePlex 有個 SQL Server Powershell Extensions(簡稱 SQLPSX)專案,裡面提供數個資料庫(不單支援 Microsoft SQL Server,連 Oracle 都支援,但前提是您的電腦必須有 Oracle 相關的組件才行)的模組(Module),其中有個 Get-SqlData 方法可以執行 T-SQL 查詢,並回傳一個 DataRow 物件。

由於回傳的是 DataRow 物件,所以可以透過 Windows PowerShell 內建的 ConvertTo-Html 指令(Cmdlet),將 DataRow 物件轉換成 HTML 格式,接著透過導向方式,輸出成 .html 檔即可在瀏覽器中顯示。

前置作業

安裝 SQLPSX 的方式很簡單,但在安裝之前,您的電腦必須已經安裝下列元件並做好設定:

安裝 SQLPSX 模組

下載內含安裝程式的壓縮檔:SQLPSX_V2_Install.zip,將其解開,然後依照作業系統的位元是 3264 的不同,執行相對應的安裝程式 SQLPSX_Install_32.exe、SQLPSX_Install_64.exe,然後依照畫面指示進行操作。

▼ 開始進行安裝
開始進行安裝

▼ 指定壓縮檔
指定壓縮檔

▼ 安裝完畢,最下方的狀態列會顯示:SQLPSX - Installation completed
安裝完畢

開啟 Windows PowerShell,輸入下面的指令,以便建立目前這個使用者的 Windows PowerShell 設定檔:

notepad $Profile

此時會開啟記事本並出現找不到檔案的訊息,按下「是」按鈕,開始編輯設定檔。請將下面的內容複製下來,然後貼到記事本,接著存檔(下面的路徑適用於 Windows Vista 之後的作業系統,若您的作業系統為 Vista 之前,請自行將 Documents 調整成 My Documents 或實際的位置與名稱):

Import-Module $Home\Documents\WindowsPowerShell\Modules\SQLPSX\SQLPSX.psm1

請注意:
$Home
變數是指目前使用者的主目錄 。

關閉 Windows PowerShell,然後再開啟它,此時應該會看到如下的畫面,即表示成功安裝 SQLPSX 模組了。開懷大笑

▼ 安裝 SQLPSX 模組成功了
成功安裝 SQLPSX 模組

使用 SQLPSX 模組

在 Windows PowerSehll 輸入如下的指令:

Get-SqlData ".\SqlExpress" 北風貿易 "SELECT * FROM 章立民研究室" | ConvertTo-Html -Property 員工編號, 身份證字號, 姓名 -Title "員工資料表" > d:\章立民研究室.html

上面的指令會從名稱為 SqlExpress 的 SQL Server Express 執行個體中的北風貿易資料庫,找出章立民研究室資料表中的所有資料,接著將輸出結果轉換成 HTML 格式,且只輸出 3 個欄位,並將 .html 的 Title 屬性設定成 員工資料表,然後輸出到 d:\章立民研究室.html

▼ 使用 Windows PowerShell 將資料匯出成 .html 檔案
使用 Windows PowerShell 將資料匯出成 .html 檔案

▼ 檢視 .html 原始碼
檢視 .html 原始碼

  1. 其實是可以在 T-SQL 語法中的 SELECT 子句指定要哪些欄位,我只是想凸顯出 PowerShell ConvertTo-Html 有個 Property 屬性也可指定要顯示哪些欄位。
  2. 至於其他 SQLPSX 模組詳細的指令說明,可在此處找到。

沒有留言:

張貼留言