3-2단원 - 사용자 지정 템플릿 만들기Lesson 3-2 - Create Custom Templates

SQL Server Management StudioSQL Server Management Studio 와 함께 많은 일반 태스크에 사용할 템플릿이 제공되지만 템플릿의 진정한 힘은 자주 만들어야 할 복잡한 스크립트의 사용자 지정 템플릿을 만드는 기능에 있습니다. comes with templates for many common tasks, but the real power of templates lies in the ability to create a custom template for a complex script that you must create frequently. 이 연습에서 소수의 매개 변수가 있는 단순 스크립트를 만들지만 템플릿은 반복되는 긴 스크립트에도 유용합니다.In this practice you will create a simple script with few parameters, but templates are useful for long, repetitive scripts, too.

사용자 지정 템플릿 사용Using Custom Templates

사용자 지정 템플릿을 만들려면To create a custom template

  1. 템플릿 탐색기에서 SQL Server 템플릿을 확장하고 Stored Procedure를 마우스 오른쪽 단추로 클릭한 다음 새로 만들기를 가리키고 폴더를 클릭합니다.In Template Explorer, expand SQL Server Templates, right-click Stored Procedure, point to New, and then click Folder.

  2. 새 템플릿 폴더 이름으로 Custom 을 입력한 다음 Enter 키를 누릅니다.Type Custom as the name of your new template folder, and then press ENTER.

  3. Custom을 마우스 오른쪽 단추로 클릭하고 새로 만들기를 가리킨 다음 템플릿을 클릭합니다.Right-click Custom, point to New, and then click Template.

  4. 새 템플릿 이름으로 WorkOrdersProc 를 입력한 다음 Enter키를 누릅니다.Type WorkOrdersProc as the name of your new template, and then press Enter.

  5. WorkOrdersProc를 마우스 오른쪽 단추로 클릭한 다음 편집을 클릭합니다.Right-click WorkOrdersProc, and then click Edit.

  6. 데이터베이스 엔진에 연결 대화 상자에서 연결 정보를 확인한 다음 연결을 클릭합니다.In the Connect to Database Engine dialog box, verify the connection information and then click Connect.

  7. 쿼리 편집기에 다음 스크립트를 입력하여 특정 부품(이 경우 Blade)에 대한 순서를 조회하는 저장 프로시저를 만듭니다.In Query Editor, type the following script to create a stored procedure that looks up orders for a particular part, in this case the Blade. 자습서 창에서 코드를 복사하여 붙여 넣을 수 있습니다.(You can copy and paste the code from the Tutorial window.)

    USE AdventureWorks20012;  
    GO  
    IF EXISTS (  
    SELECT *   
       FROM INFORMATION_SCHEMA.ROUTINES   
       WHERE SPECIFIC_NAME = 'WorkOrdersForBlade')  
       DROP PROCEDURE dbo.WorkOrdersForBlade;  
    GO  
    CREATE PROCEDURE dbo.WorkOrdersForBlade  
    AS  
    SELECT Name, WorkOrderID   
    FROM Production.WorkOrder AS WO  
    JOIN Production.Product AS Prod  
    ON WO.ProductID = Prod.ProductID  
    WHERE Name = 'Blade';  
    GO  
    
  8. F5 키를 눌러 이 스크립트를 실행하면 WorkOrdersForBlade 프로시저가 생성됩니다.Press F5 to execute this script, creating the WorkOrdersForBlade procedure.

  9. 개체 탐색기에서 서버를 마우스 오른쪽 단추로 클릭한 다음 새 쿼리를 클릭합니다.In Object Explorer, right-click your server, and then click New Query. 새 쿼리 편집기 창이 열립니다.A new Query Editor window opens.

  10. 쿼리 편집기에 EXECUTE dbo.WorkOrdersForBlade를 입력한 다음 F5 키를 눌러 쿼리를 실행합니다.In Query Editor, type EXECUTE dbo.WorkOrdersForBlade, and then press F5 to execute the query. 결과 창에서 Blade에 대한 작업 주문 목록이 반환되는지 확인합니다.Confirm that the Results pane returns a list of work orders for blades.

  11. 네 곳에서 제품 이름 Blade를 <product_name, nvarchar(50), name*>* 매개 변수로 바꾸어 템플릿 스크립트(7단계의 스크립트)를 편집합니다.Edit the template script (the script in step 7), replacing the product name Blade with the parameter <product_name, nvarchar(50), name*>*, in four places.

    참고

    매개 변수에는 바꾸려는 매개 변수의 이름, 매개 변수의 데이터 형식 및 매개 변수 기본값의 세 가지 요소가 필요합니다.Parameters require three elements: the name of the parameter that you want to replace, the data type of the parameter, and a default value for the parameter.

  12. 이제 스크립트는 다음과 같습니다.Now the script should look like:

    USE AdventureWorks20012;  
    GO  
    IF EXISTS (  
    SELECT *   
       FROM INFORMATION_SCHEMA.ROUTINES   
       WHERE SPECIFIC_NAME = 'WorkOrdersFor<product_name, nvarchar(50), name>')  
       DROP PROCEDURE dbo.WorkOrdersFor<product_name, nvarchar(50), name>;  
    GO  
    CREATE PROCEDURE dbo.WorkOrdersFor<product_name, nvarchar(50), name>  
    AS  
    SELECT Name, WorkOrderID   
    FROM Production.WorkOrder AS WO  
    JOIN Production.Product AS Prod  
    ON WO.ProductID = Prod.ProductID  
    WHERE Name = '<product_name, nvarchar(50), name>';  
    GO  
    
  13. 파일 메뉴에서 WorkOrdersProc.sql 저장 을 클릭하여 템플릿을 저장합니다.On the File menu, click Save WorkOrdersProc.sql to save your template.

사용자 지정 템플릿을 테스트하려면To test the custom template

  1. 템플릿 탐색기에서 Stored Procedure, Custom을 차례로 확장한 다음 WorkOrderProc를 두 번 클릭합니다.In Template Explorer, expand Stored Procedure, expand Custom, and then double-click WorkOrderProc.

  2. 데이터베이스 엔진에 연결 대화 상자에서 연결 정보를 지정한 다음 연결을 클릭합니다.In the Connect to Database Engine dialog box, complete the connection information and then click Connect. WorkOrderProc 템플릿의 내용이 포함된 새 쿼리 편집기 창이 열립니다.A new Query Editor window opens, containing the contents of the WorkOrderProc template.

  3. 쿼리 메뉴에서 템플릿 매개 변수 값 지정을 클릭합니다.On the Query menu, click Specify Values for Template Parameters.

  4. 템플릿 매개 변수 바꾸기 대화 상자에서 product_name 값으로 FreeWheel (기본 내용 덮어쓰기)을 입력한 다음 확인 을 클릭하여 템플릿 매개 변수 바꾸기 대화 상자를 닫고 쿼리 편집기에서 스크립트를 수정합니다.In the Replace Template Parameters dialog box, for the product_name value, type FreeWheel (overwriting the default contents), and then click OK to close the Replace Template Parameters dialog box and modify the script in the Query Editor.

  5. F5 키를 눌러 쿼리를 실행하면 프로시저가 생성됩니다.Press F5 to execute the query, creating the procedure.

단원의 다음 태스크Next Task in Lesson

스크립트를 프로젝트 또는 솔루션으로 저장Save Scripts as Projects or Solutions