搜尋本站文章

2012-05-31

SQL Server 2012_SSMS 2012 管理工具 - 小技巧:在「查詢編輯器」上,使用「程式碼片段(Snippets)」


在 SSMS 2012 管理工具的「查詢編輯器」上,新增加了「 Transact-SQL 程式碼片段」功能。

Transact-SQL 程式碼片段是包含 Transact-SQL 陳述式或區塊之基本結構的範本。
當您在 Database Engine 查詢編輯器中加入陳述式時,您可以使用程式碼片段做為起點。

您可以插入 SQL Server 所提供的預先定義程式碼片段,或是建立您自己的程式碼片段。



在先前版本上,若要使用「範本總管」來加速開發 Transact-SQL 程式,其使用方法如下:

使用 SSMS 管理工具,點選上方的「檢視」\「範本總管」。

-- 01_檢視_範本總管



-- 02_使用「範本瀏覽器」



SQL Server 提供各種範本。
範本為包含 SQL 指令碼的模板檔案,可協助您在資料庫中建立物件。

第一次開啟範本總管時,範本的複本是放置在使用者的 [Documents and Settings] 資料夾的
Application Data\Microsoft\Microsoft SQL Server\100\Tools\Shell\Templates 底下。

您可以在 [範本總管] 中瀏覽可用的範本,然後開啟範本以將程式碼併入程式碼編輯器視窗。 您還可以建立自訂範本。

範本的優點

方案、專案和各類型的程式碼編輯器都可以使用範本。

您可以利用範本來建立資料庫、資料表、檢視、索引、預存程序、觸發程序、統計資料和函數這類物件。

此外,還有一些範本可協助您建立 Analysis Services 的擴充屬性、連結伺服器、登入、角色、使用者和範本來管理伺服器。

SQL Server Management Studio 所提供的範本指令碼包含協助您自訂程式碼的參數。 開啟範本時,請使用 [取代範本參數] 對話方塊,在指令碼中插入值。

請建立您經常執行之工作的自訂範本。 請將您的自訂指令碼組織成現有的資料夾,或建立新的資料夾結構。

Database Engine 查詢編輯器也支援程式碼片段,可透過以滑鼠右鍵按一下指令碼中的特定位置,在該位置插入程式碼片段。




插入程式碼片段

您可以使用「插入程式碼片段」功能表開啟分類的程式碼片段清單,從中選擇。

Transact-SQL 程式碼片段包含取代點:建議與該點相關語法的文字。

例如,CREATE TABLE 程式碼片段有資料表名稱、資料行名稱和資料行資料類型等元素的取代點。
在插入程式碼片段之後,您必須變更取代文字,以形成有效的 Transact-SQL 陳述式。

使用「 Transact-SQL 程式碼片段」的方式,請參考以下的步驟:

在 SSMS 2012 管理工具的「查詢編輯器」上,將游標放在您想要插入 Transact-SQL 程式碼片段的位置。

若要使用「 Transact-SQL 程式碼片段」,以下提供種方式:

方法01.

滑鼠右鍵,選擇「插入程式碼片段」。

-- 03_滑鼠右選,選擇「插入程式碼片段」



方法02:
在 SSMS 2012 管理工具,點選上方工作選單的「編輯」\「IntelliSense」,然後,選擇「插入程式碼片段」。

-- 04_點選「編輯」_「IntelliSense」_選擇「插入程式碼片段」




方法03:
按下鍵盤的組合鍵:CTRL+K 加上 CTRL+X。




完成 Transact-SQL 程式碼片段

一旦您已經將 Transact-SQL 程式碼片段插入指令碼之後,就可以編輯片段的內容,以便建立完整的 Transact-SQL 陳述式。

當您將 Transact-SQL 片段加入至指令碼時,已插入的片段陳述式就會具有一個或多個反白顯示的取代點。

如果您將滑鼠指標停留在取代點上方,就會顯示工具提示,其中說明您可以指定的語法元素。

Database Engine 查詢編輯器會將該片段視為不同於周圍的指令碼,直到您關閉來源檔案為止。

此外,取代點會維持作用中狀態,直到您關閉來源檔案為止。

您也可以將其他語法元素加入至片段所插入的範本程式碼。 例如,「建立資料表」片段範本會產生兩個資料行定義。

您必須加入其他資料行定義,以便建立具有兩個以上資料行的資料表。

我們以純量函數為例:

步驟01. 先選擇執行「插入程式碼片段」的方式。

步驟02. 使用滑鼠或是 TAB 與方向鍵,選擇「Function」,選擇「建立純量函數」,按下 ENTER 鍵。

-- 05_選擇_建立純量函數



-- 06_檢視產生的範本程式碼



步驟03. 填入合適的參數值。

使用 TAB 鍵移動到下一個取代點。
您可以使用 SHIFT+TAB,移至上一個取代點。

在填入變數名稱時,相對的變數名稱會一併變更。

-- 07_填入變數名稱,相對的變數名稱會一併變更_1



-- 08_填入變數名稱,相對的變數名稱會一併變更_2





但沒有支援在使用「範本總管」所提供的「指定範本參數的值」

-- 09_「指定範本參數的值」






參考資料

Transact-SQL 程式碼片段
http://msdn.microsoft.com/zh-tw/library/hh230913

插入 Transact-SQL 程式碼片段
http://msdn.microsoft.com/zh-tw/library/ff878440.aspx

插入範圍陳述式 Transact-SQL 程式碼片段
http://msdn.microsoft.com/zh-tw/library/ff878185

完成 Transact-SQL 程式碼片段
http://msdn.microsoft.com/zh-tw/library/ff878357

新增 Transact-SQL 程式碼片段
http://msdn.microsoft.com/zh-tw/library/gg492130

範本總管
http://technet.microsoft.com/zh-tw/library/ms174169.aspx