Freigeben über


Anzeigen der Eigenschaften der Planhinweisliste

Gilt für: SQL Server Azure SQL-Datenbank Azure SQL Managed Instance

Erfahren Sie, wie Sie mithilfe von SQL Server Management Studio oder Transact-SQL die Eigenschaften einer Planhinweisliste in SQL Server anzeigen.

In diesem Thema

Vorbereitungen

Sicherheit

Berechtigungen

Die Sichtbarkeit der Metadaten in Katalogsichten ist auf sicherungsfähige Elemente beschränkt, bei denen der Benutzer entweder der Besitzer ist oder für die dem Benutzer eine Berechtigung erteilt wurde.

Verwendung von SQL Server Management Studio

So zeigen Sie die Eigenschaften einer Planhinweisliste an

  1. Klicken Sie auf das Pluszeichen, um die Datenbank zu erweitern, in der Sie die Eigenschaften einer Planhinweisliste anzeigen möchten, und klicken Sie dann auf das Pluszeichen, um den Ordner Programmierbarkeit zu erweitern.

  2. Klicken Sie auf das Pluszeichen, um den Ordner Planhinweislisten zu erweitern.

  3. Klicken Sie mit der rechten Maustaste auf die Planhinweisliste, deren Eigenschaften Sie anzeigen möchten, und wählen Sie Eigenschaften.

    Die folgenden Eigenschaften werden im Dialogfeld Die Eigenschaften der Planhinweisliste angezeigt.

    Hinweise
    Zeigt die Abfragehinweise oder den Abfrageplan zur Anwendung auf die Transact-SQL-Anweisung an. Wenn ein Abfrageplan als Hinweis gekennzeichnet ist, wird die XML-Showplanausgabe für den Plan angezeigt.

    Ist deaktiviert
    Zeigt den Status der Planhinweisliste an. Mögliche Werte sind True und False.

    Name
    Zeigt den Namen der Planhinweisliste an.

    Parameter
    Wenn es sich beim Bereichstyp um SQL oder TEMPLATE handelt, wird hiermit der Name und Datentyp aller Parameter angezeigt, die in die Transact-SQL-Anweisung eingebettet sind.

    Bereichsbatch
    Zeigt den Batchtext an, in dem die Transact-SQL-Anweisung enthalten ist.

    Name von Bereichsobjekt
    Wenn es sich beim Bereichstyp um OBJECT handelt, wird hiermit der Name der gespeicherten Transact-SQL-Prozedur, benutzerdefinierten Skalarfunktion, aus mehreren Anweisungen bestehenden Funktion mit Tabellenrückgabe oder des DML-Triggers angezeigt, die bzw. der die Transact-SQL-Anweisung enthält.

    Name von Bereichsschema
    Wenn es sich beim Bereichstyp um OBJECT handelt, wird hiermit der Name des Schemas angezeigt, in dem sich das Objekt befindet.

    Bereichstyp
    Zeigt den Typ der Entität an, in dem die Transact-SQL-Anweisung enthalten ist. Dies gibt den Kontext zum Abgleich der Transact-SQL-Anweisung mit der Planhinweisliste an. Mögliche Werte sind OBJECT, SQLund TEMPLATE.

    Anweisung
    Zeigt die Transact-SQL-Anweisung an, auf die die Planhinweisliste angewendet wird.

  4. Klicken Sie auf OK.

Verwenden von Transact-SQL

So zeigen Sie die Eigenschaften einer Planhinweisliste an

  1. Stellen Sie im Objekt-Explorer eine Verbindung mit einer Datenbank-Engine-Instanz her.

  2. Klicken Sie in der Standardleiste auf Neue Abfrage.

  3. Kopieren Sie das folgende Beispiel, fügen Sie es in das Abfragefenster ein, und klicken Sie auf Ausführen.

    -- If a plan guide named "Guide1" already exists in the AdventureWorks2022 database, delete it.  
    USE AdventureWorks2022;  
    GO  
    IF OBJECT_ID(N'Guide1') IS NOT NULL  
       EXEC sp_control_plan_guide N'DROP', N'Guide1';  
    GO  
    -- creates a plan guide named Guide1 based on a SQL statement  
    EXEC sp_create_plan_guide   
        @name = N'Guide1',   
        @stmt = N'SELECT TOP 1 *   
                  FROM Sales.SalesOrderHeader   
                  ORDER BY OrderDate DESC',   
        @type = N'SQL',  
        @module_or_batch = NULL,   
        @params = NULL,   
        @hints = N'OPTION (MAXDOP 1)';  
    GO  
    -- Gets the name, created date, and all other relevant property information on the plan guide created above.   
    SELECT name AS plan_guide_name,  
       create_date,  
       query_text,  
       scope_type_desc,  
       OBJECT_NAME(scope_object_id) AS scope_object_name,  
       scope_batch,  
       parameters,  
       hints,  
       is_disabled  
    FROM sys.plan_guides  
    WHERE name = N'Guide1';  
    GO  
    

Weitere Informationen finden Sie unter sys.plan_guides (Transact-SQL).