Share via


sp_help (Transact-SQL)

Gilt für:SQL ServerAzure SQL-DatenbankAzure SQL Managed Instance

Meldet Informationen über ein Datenbankobjekt (jedes objekt, das in der Kompatibilitätsansicht sys.sysobjects aufgeführt ist), einen benutzerdefinierten Datentyp oder einen Datentyp.

Transact-SQL-Syntaxkonventionen

Syntax

sp_help [ [ @objname = ] N'objname' ]
[ ; ]

Argumente

[ @objname = ] N'objname'

Der Name eines objekts, in sys.sysobjects oder eines benutzerdefinierten Datentyps in der sys.systypes Tabelle. @objname ist nvarchar(776), mit einem Standardwert von NULL. Datenbanknamen sind nicht akzeptabel. Zwei oder drei Teilenamen können getrennt werden, z Person.AddressType . B. oder [Person].[AddressType].

Rückgabecodewerte

0 (erfolgreich) oder 1 Fehler.

Resultset

Die zurückgegebenen Resultsets hängen davon ab, ob @name angegeben wird, wann sie angegeben wird und welches Datenbankobjekt es ist.

  1. Wenn sp_help ohne Argumente ausgeführt wird, werden Zusammenfassungsinformationen aller Typen zurückgegeben, die in der aktuellen Datenbank vorhanden sind.

    Spaltenname Datentyp Beschreibung
    Name nvarchar(128) Objektname
    Owner nvarchar(128) Objektbesitzer (Der Datenbankprinzipal, der ein Objekt besitzt. Der Standardwert ist der Besitzer des Schemas, das das Objekt enthält.)
    Object_type nvarchar(31) Objekttyp
  2. Wenn @name ein SQL Server-Datentyp oder benutzerdefinierter Datentyp ist, sp_help wird dieses Resultset zurückgegeben.

    Spaltenname Datentyp Beschreibung
    Type_name nvarchar(128) Name des Datentyps.
    Storage_type nvarchar(128) SQL Server-Typname.
    Length smallint Physische Länge des Datentyps (in Bytes)
    Prec int Genauigkeit (Gesamtzahl der Ziffern)
    Scale int Anzahl der Stellen nach dem Dezimaltrennzeichen
    Nullable varchar(35) Gibt an, ob NULL Werte zulässig sind: Yes oder No.
    Default_name nvarchar(128) Name eines an diesen Typ gebundenen Standards.

    NULL = Es ist keine Standardeinstellung gebunden.
    Rule_name nvarchar(128) Name einer an diesen Typ gebundenen Regel.

    NULL = Es ist keine Standardeinstellung gebunden.
    Collation sysname Sortierung des Datentyps. NULL für Nicht-Zeichen-Datentypen.
  3. Wenn @name ein anderes Datenbankobjekt als ein Datentyp ist, sp_help wird dieses Resultset und auch zusätzliche Resultsets basierend auf dem angegebenen Objekttyp zurückgegeben.

    Spaltenname Datentyp Beschreibung
    Name nvarchar(128) Tabellenname
    Owner nvarchar(128) Tabellenbesitzer
    Type nvarchar(31) Tabellentyp
    Created_datetime datetime Erstellungsdatum der Tabelle

    Je nach angegebenem sp_help Datenbankobjekt werden zusätzliche Resultsets zurückgegeben.

    Wenn @name eine Systemtabelle, Eine Benutzertabelle oder Ansicht ist, sp_help werden die folgenden Resultsets zurückgegeben. Das Resultset, das beschreibt, wo sich die Datendatei in einer Dateigruppe befindet, wird jedoch nicht für eine Ansicht zurückgegeben.

    • Das folgende Resultset wird auch für Spaltenobjekte zurückgegeben:

      Spaltenname Datentyp Beschreibung
      Column_name nvarchar(128) Spaltenname.
      Type nvarchar(128) Spaltendatentyp.
      Computed varchar(35) Gibt an, ob die Werte in der Spalte berechnet werden: Yes oder No.
      Length int Spaltenlänge in Bytes

      Hinweis: Wenn der Spaltendatentyp ein großer Werttyp (varchar(max), nvarchar(max), varbinary(max) oder xml ist, wird der Wert als -1angezeigt.
      Prec char(5) Spaltengenauigkeit
      Scale char(5) Dezimalstellen einer Spalte
      Nullable varchar(35) Gibt an, ob NULL Werte in der Spalte zulässig sind: Yes oder No.
      TrimTrailingBlanks varchar(35) Nachfolgende Leerzeichen entfernen. Gibt einen Yes oder No zurück.
      FixedLenNullInSource varchar(35) Nur aus Gründen der Abwärtskompatibilität beibehalten
      Collation sysname Sortierung der Spalte. NULL für nicht character Datentypen.
    • Das folgende Resultset wird auch für Identitätsspalten zurückgegeben:

      Spaltenname Datentyp Beschreibung
      Identity nvarchar(128) Name der Spalte, deren Datentyp als Identität deklariert wird
      Seed numeric Startwert für die Identitätsspalte
      Increment numeric Schrittweite für Werte in dieser Spalte
      Not For Replication int IDENTITY die Eigenschaft wird nicht erzwungen, wenn eine Replikationsanmeldung, z . B. sqlrepl, Daten in die Tabelle einfügt:

      1 = True
      0 = False
    • Das folgende Resultset wird auch für Spalten zurückgegeben:

      Spaltenname Datentyp Beschreibung
      RowGuidCol sysname Name der GUID-Spalte
    • Das folgende Resultset wird auch für Dateigruppen zurückgegeben:

      Spaltenname Datentyp Beschreibung
      Data_located_on_filegroup nvarchar(128) Dateigruppe, in der sich die Daten befinden: Primary, , Secondaryoder Transaction Log.
    • Das folgende Resultset wird auch für Indizes zurückgegeben:

      Spaltenname Datentyp Beschreibung
      index_name sysname Indexname.
      Index_description varchar(210) Beschreibung des Index.
      index_keys nvarchar(2078) Namen der Spalten, die für den Index verwendet werden. Gibt für speicheroptimierte Spaltenspeicherindizes zurück NULL .
    • Das folgende Resultset wird auch für Einschränkungen zurückgegeben:

      Spaltenname Datentyp Beschreibung
      constraint_type nvarchar(146) Einschränkungstyp
      constraint_name nvarchar(128) Name der Einschränkung
      delete_action nvarchar(9) Gibt an, ob die DELETE Aktion eine von NO_ACTION, CASCADE, , SET_NULL, oder SET_DEFAULTN/A.

      Gilt nur für FOREIGN KEY-Einschränkungen.
      update_action nvarchar(9) Gibt an, ob die UPDATE Aktion eine von NO_ACTION, CASCADE, , SET_NULL, oder SET_DEFAULTN/A.

      Gilt nur für FOREIGN KEY Einschränkungen.
      status_enabled varchar(8) Gibt an, ob die Einschränkung aktiviert ist: Enabled, , Disabled, oder N/A.

      Gilt nur für CHECK und FOREIGN KEY Einschränkungen.
      status_for_replication varchar(19) Zeigt an, ob die Einschränkung für die Replikation gilt.

      Gilt nur für CHECK und FOREIGN KEY Einschränkungen.
      constraint_keys nvarchar(2078) Die Namen der Spalten für die Einschränkung oder bei Standards und Regeln der Text, der den Standard oder die Regel definiert.
    • Das folgende Resultset wird auch für verweisende Objekte zurückgegeben:

      Spaltenname Datentyp Beschreibung
      Table is referenced by nvarchar(516) Identifiziert andere Datenbankobjekte, die auf die Tabelle verweisen.
    • Das folgende Resultset wird auch für gespeicherte Prozeduren, Funktionen oder erweiterte gespeicherte Prozeduren zurückgegeben.

      Spaltenname Datentyp Beschreibung
      Parameter_name nvarchar(128) Name des Parameters der gespeicherten Prozedur
      Type nvarchar(128) Datentyp des Parameters der gespeicherten Prozedur
      Length smallint Maximale physische Speicherlänge in Bytes
      Prec int Genauigkeit oder Gesamtzahl der Ziffern
      Scale int Die Anzahl der Ziffern rechts vom Dezimalzeichen
      Param_order smallint Reihenfolge der Parameter

Hinweise

Die sp_help Prozedur sucht nur nach einem Objekt in der aktuellen Datenbank.

Wenn @name nicht angegeben ist, sp_help werden Objektnamen, Besitzer und Objekttypen für alle Objekte in der aktuellen Datenbank aufgelistet. sp_helptrigger stellt Informationen zu Triggern bereit.

sp_help macht nur geordnete Indexspalten verfügbar; Daher werden keine Informationen zu XML-Indizes oder räumlichen Indizes verfügbar gemacht.

Berechtigungen

Erfordert die Mitgliedschaft in der public -Rolle. Der Benutzer muss über mindestens eine Berechtigung für @objname verfügen. Um Spalteneinschränkungsschlüssel, Standardwerte oder Regeln anzuzeigen, müssen Sie über die Berechtigung für die Tabelle verfügen VIEW DEFINITION .

Beispiele

Die Transact-SQL-Codebeispiele in diesem Artikel verwenden die AdventureWorks2022-Beispieldatenbank, die Sie von der Homepage Microsoft SQL Server Samples and Community Projects herunterladen können.

A. Zurückgeben von Informationen zu allen Objekten

Das folgende Beispiel führt Informationen zu jedem Objekt in der master-Datenbank auf.

USE master;
GO
EXEC sp_help;
GO

B. Zurückgeben von Informationen zu einem einzelnen Objekt

Das folgende Beispiel zeigt Informationen zur Person.Person-Tabelle an.

USE AdventureWorks2022;
GO
EXEC sp_help 'Person.Person';
GO