계획 지침 삭제

적용 대상:SQL ServerAzure SQL DatabaseAzure SQL Managed Instance

SQL Server Management Studio 또는 Transact-SQL을 사용하여 SQL Server에서 계획 지침을 삭제(삭제)할 수 있습니다. Transact-SQL을 사용하여 데이터베이스의 모든 계획 지침을 삭제할 수도 있습니다.

항목 내용

시작하기 전에

보안

사용 권한

OBJECT 계획 가이드를 삭제하려면 계획 지침에서 참조하는 개체(예: 함수, 저장 프로시저)에 대한 ALTER 권한이 필요합니다. 다른 모든 계획 지침에는 ALTER DATABASE 권한이 필요합니다.

SQL Server Management Studio 사용

계획 가이드를 삭제하려면

  1. 더하기 기호를 클릭하여 계획 지침을 삭제할 데이터베이스를 확장한 다음 더하기 기호를 클릭하여 프로그래밍 기능 폴더를 확장합니다.

  2. 더하기 기호를 클릭하여 계획 지침 폴더를 확장합니다 .

  3. 삭제하려는 계획 지침을 마우스 오른쪽 단추로 클릭하고 삭제를 선택합니다.

  4. 개체 삭제 대화 상자에서 올바른 계획 지침이 선택되어 있는지 확인하고 확인을 클릭합니다.

Transact-SQL 사용

단일 계획 가이드를 삭제하려면

  1. 개체 탐색기에서 데이터베이스 엔진인스턴스에 연결합니다.

  2. 표준 도구 모음에서 새 쿼리를 클릭합니다.

  3. 다음 예를 복사하여 쿼리 창에 붙여 넣고 실행을 클릭합니다.

    --Create a procedure on which to define the plan guide.  
    IF OBJECT_ID(N'Sales.GetSalesOrderByCountry', N'P') IS NOT NULL  
        DROP PROCEDURE Sales.GetSalesOrderByCountry;  
    GO  
    CREATE PROCEDURE Sales.GetSalesOrderByCountry   
        (@Country nvarchar(60))  
    AS  
    BEGIN  
        SELECT *  
        FROM Sales.SalesOrderHeader AS h   
        INNER JOIN Sales.Customer AS c ON h.CustomerID = c.CustomerID  
        INNER JOIN Sales.SalesTerritory AS t ON c.TerritoryID = t.TerritoryID  
        WHERE t.CountryRegionCode = @Country;  
    END  
    GO  
    --Create the plan guide.  
    EXEC sp_create_plan_guide N'Guide3',  
        N'SELECT *  
        FROM Sales.SalesOrderHeader AS h   
        INNER JOIN Sales.Customer AS c ON h.CustomerID = c.CustomerID  
        INNER JOIN Sales.SalesTerritory AS t ON c.TerritoryID = t.TerritoryID  
        WHERE t.CountryRegionCode = @Country',  
        N'OBJECT',  
        N'Sales.GetSalesOrderByCountry',  
        NULL,  
        N'OPTION (OPTIMIZE FOR (@Country = N''US''))';  
    GO  
    --Drop the plan guide.  
    EXEC sp_control_plan_guide N'DROP', N'Guide3';  
    GO  
    

데이터베이스의 모든 계획 지침을 삭제하려면

  1. 개체 탐색기에서 데이터베이스 엔진인스턴스에 연결합니다.

  2. 표준 도구 모음에서 새 쿼리를 클릭합니다.

  3. 다음 예를 복사하여 쿼리 창에 붙여 넣고 실행을 클릭합니다.

    USE AdventureWorks2022;  
    GO  
    EXEC sp_control_plan_guide N'DROP ALL';  
    GO  
    

자세한 내용은 sp_control_plan_guide(Transact-SQL)를 참조하세요.