本文將介紹如何透過 SSDT 將資料庫部署到 SQL Azure。
在上一篇筆者介紹如何在 Windows Azure 上建立 SQL 資料庫,今天筆者將介紹如何透過 SQL Server 2012 的 SQL Server Data Tools(以下簡稱 SSDT)來部署資料庫到 SQL Azure。
首先您必須先開啟 SSDT 之後從【檢視 \ SQL Server 物件總管】或利用快速鍵【Ctrl + \、Ctrl + S】來開啟 SQL Server 物件總管。
於 SQL Server 物件總管視窗中的 SQL Server 項目上按滑鼠右鍵,選擇【加入 SQL Server】。
輸入您要連接的 SQL Server 伺服器名稱及相關驗證資訊,本文以連接到本機的預設執行個體並使用 Windows 驗證為例。
本文以 AdventureWorks2012 資料庫為例,於【AdventureWorks2012 】上按滑鼠右鍵,選擇【建立新專案】。
在【匯入資料庫】視窗中您必須輸入您的資料庫專案的名稱,並選擇專案所要存放的路徑,接著直接按啟動即可。
接著【匯入資料庫】精靈便會開始將您資料庫中所建立的物件,例如資料表、檢視、預存程序等,都轉換成一個一個的 *.sql 檔案。
匯入完成之後您就可以於【方案總管】中看到 SSDT 幫您產生的資料庫物件的 *.sql 檔。
再來您必須設定您要部署的目標平台,可以從【方案總管】中的專案名稱上按滑鼠右鍵,選擇【屬性】或是直接按快速鍵【Alt + Enter】,來開啟專案設定視窗。
在專案設定視窗中,選擇【目標平台】為 SQL Azure 後儲存,接著以快速鍵【Ctrl + Shift + B】來建置專案,透過建置動作檢查是否符合 SQL Azure 的規則。
由錯誤清單看來,SQL Azure 似乎不支援 sp_addextendedproperty 預存程序,為了示範方便,筆者先暫時將錯誤的程式碼 Mark 起來,其他的錯誤訊息也是比照辦理,實務上您還是得調整您要部署到 SQL Azure 的程式碼直到建置成功為止。
要將資料庫專案部署至 SQL Azure,可從方案總管中您的專案名稱上按滑鼠右鍵,選擇【發行】。
在【發行資料庫】視窗中您必須設定的是【目標資料庫連接】,您可以點選【編輯】按鈕來設定 SQL Azure 的伺服器名稱,以及使用者名稱及密碼等。接著輸入部署到 SQL Azure 時所要使用的【資料庫名稱】這個名稱可以與您的來源資料庫或資料庫專案不同,本文以相同名稱(AW2012)為例,最後是按【發行】按鈕就可以開始發行動作。
所有發行到 SQL Azure 的每個步驟,都可以在資料工具作業視窗中看到,您也可以點選右側的 Hyperlink 來查看 SSDT 幫您產生了那些指令碼以及執行結果。
若發行過程沒問題您就可以看到如下圖的綠燈,代表已經順利把資料庫專案部署至 SQL Azure。
在 Windows Azure 上您也可以看到您的 SQL 資料庫中多了剛剛部署的 AW2012。
在 SQL Azure 的管理入口網站,也可以看到 AW2012 的內容(如下圖)。
除了 SQL Azure 的管理入口網站外,您也可以利用 SSMS 2012 來管理 SQL Azure 上的資料庫(如下圖)。
相信經過本文的介紹,您應該很容易就可以把您的 SQL Server 資料庫透過 SSDT 部署至 SQL Azure。
【參考資料】