sp_sproc_columns (Transact-SQL)
Gibt Spalteninformationen für eine einzelne gespeicherte Prozedur oder benutzerdefinierte Funktion in der aktuellen Umgebung zurück.
Syntax
sp_sproc_columns [[@procedure_name = ] 'name']
[ , [@procedure_owner = ] 'owner']
[ , [@procedure_qualifier = ] 'qualifier']
[ , [@column_name = ] 'column_name']
[ , [@ODBCVer = ] 'ODBCVer']
[ , [@fUsePattern = ] 'fUsePattern']
Argumente
[ @procedure_name = ] 'name'
Der Name der Prozedur, die verwendet wird, um Kataloginformationen zurückzugeben. name ist vom Datentyp nvarchar(390). Der Standardwert ist %, womit alle Tabellen in der aktuellen Datenbank gemeint sind. Mustervergleiche mit Platzhalterzeichen werden unterstützt.[ @procedure_owner =] 'owner'
Der Name des Besitzers der Prozedur. ownerist nvarchar(384). Der Standardwert ist NULL. Mustervergleiche mit Platzhalterzeichen werden unterstützt. Wenn owner nicht angegeben wird, gelten die Standardregeln für die Sichtbarkeit von Prozeduren des zugrunde liegenden DBMS.Wenn der aktuelle Benutzer eine Prozedur mit dem angegebenen Namen besitzt, werden Informationen zu dieser Prozedur zurückgegeben. Wenn owner nicht angegeben wird und der aktuelle Benutzer keine Prozedur mit dem angegebenen Namen besitzt, sucht sp_sproc_columns nach einer Prozedur mit dem angegebenen Namen, die dem Datenbankbesitzer gehört. Sofern die Prozedur vorhanden ist, werden Information zu deren Spalten zurückgegeben.
[ @procedure_qualifier =] 'qualifier'
Der Name des Prozedurqualifizierers. qualifier ist vom Datentyp sysname und hat den Standardwert NULL. Verschiedene DBMS-Produkte unterstützen eine dreiteilige Benennung für Tabellen (qualifier.owner.name). In SQL Server entspricht dieser Parameter dem Datenbanknamen. Bei anderen Produkten stellt er den Servernamen der Datenbankumgebung für die Tabelle dar.[ @column_name =] 'column_name'
Eine einzelne Spalte, die verwendet wird, wenn nur eine Spalte mit Kataloginformationen gewünscht wird. column_name ist vom Datentyp nvarchar(384) und hat den Standardwert NULL. Wenn column_name weggelassen wird, werden alle Spalten zurückgegeben. Mustervergleiche mit Platzhalterzeichen werden unterstützt. Für eine optimale Interoperabilität sollte der Gatewayclient nur einen ISO-Standardmustervergleich voraussetzen (die Platzhalterzeichen % und _).[ @ODBCVer =] 'ODBCVer'
Die verwendete ODBC-Version. ODBCVer ist vom Datentyp int. Der Standardwert ist 2 und bezeichnet die ODBC-Version 2.0. Weitere Informationen zu den Unterschieden zwischen ODBC, Version 2.0, und ODBC, Version 3.0, finden Sie in der SQLProcedureColumns-ODBC-Spezifikation für ODBC, Version 3.0.[ @fUsePattern =] 'fUsePattern'
Bestimmt, ob der Unterstrich (_), das Prozentzeichen (%) und eckige Klammern ([ ]) als Platzhalterzeichen interpretiert werden. Zulässige Werte sind 0 (Mustervergleich ist auf OFF festgelegt) und 1 (Mustervergleich ist auf ON festgelegt). fUsePattern ist vom Datentyp bit und hat den Standardwert 1.
Rückgabecodewerte
Keine
Resultsets
Spaltenname |
Datentyp |
Beschreibung |
---|---|---|
PROCEDURE_QUALIFIER |
sysname |
Der Name des Prozedurqualifizierers. Diese Spalte kann den Wert NULL aufweisen. |
PROCEDURE_OWNER |
sysname |
Der Name des Prozedurbesitzers. Diese Spalte gibt immer einen Wert zurück. |
PROCEDURE_NAME |
nvarchar(134) |
Der Name der Prozedur. Diese Spalte gibt immer einen Wert zurück. |
COLUMN_NAME |
sysname |
Der Name der Spalte, der für jede Spalte von TABLE_NAME zurückgegeben wird. Diese Spalte gibt immer einen Wert zurück. |
COLUMN_TYPE |
smallint |
Dieses Feld gibt immer einen Wert zurück: 0 = SQL_PARAM_TYPE_UNKNOWN 1 = SQL_PARAM_TYPE_INPUT 2 = SQL_PARAM_TYPE_OUTPUT 3 = SQL_RESULT_COL 4 = SQL_PARAM_OUTPUT 5 = SQL_RETURN_VALUE |
DATA_TYPE |
smallint |
Ein ganzzahliger Code für einen ODBC-Datentyp. Wenn dieser Datentyp keinem ISO-Datentyp zugeordnet werden kann, lautet der Wert NULL. Der Name des systemeigenen Datentyps wird in der TYPE_NAME-Spalte zurückgegeben. |
TYPE_NAME |
sysname |
Die Zeichenfolgendarstellung des Datentyps. Es handelt sich um die DBMS-spezifische Darstellung des Datentypnamens. |
PRECISION |
int |
Die Anzahl von signifikanten Stellen. Der Rückgabewert für die PRECISION-Spalte besitzt die Basis 10. |
LENGTH |
int |
Die Übertragungsgröße der Daten. |
SCALE |
smallint |
Die Anzahl von Ziffern rechts vom Dezimalzeichen. |
RADIX |
smallint |
Die Basis für die Darstellung numerischer Datentypen. |
NULLABLE |
smallint |
Gibt die NULL-Zulässigkeit an: 1 = Datentyp mit NULL-Werten ist zulässig. 0 = NULL-Werte sind nicht zulässig. |
REMARKS |
varchar(254) |
Eine Beschreibung der Prozedurspalte. SQL Server gibt für diese Spalte keinen Wert zurück. |
COLUMN_DEF |
nvarchar(4000) |
Standardwert der Spalte. |
SQL_DATA_TYPE |
smallint |
Der Wert des SQL-Datentyps, wie er im TYPE-Feld des Deskriptors angezeigt wird. Diese Spalte entspricht der DATA_TYPE-Spalte, mit Ausnahme der Datentypen datetime und ISO interval. Diese Spalte gibt immer einen Wert zurück. |
SQL_DATETIME_SUB |
smallint |
Wenn SQL_DATA_TYPE den Wert SQL_DATETIME oder SQL_INTERVAL hat, enthält diese Spalte den Subcode für datetime ISO interval. Bei anderen Datentypen als datetime und ISO interval ist dieses Feld NULL. |
CHAR_OCTET_LENGTH |
int |
Die maximale Länge (in Bytes) einer Spalte vom Datentyp character oder binary. Bei allen anderen Datentypen gibt diese Spalte einen NULL-Wert zurück. |
ORDINAL_POSITION |
int |
Die Position einer Spalte innerhalb der Tabelle. Die erste Spalte in der Tabelle ist 1. Diese Spalte gibt stets einen Wert zurück. |
IS_NULLABLE |
varchar(254) |
Die NULL-Zulässigkeit einer Spalte innerhalb der Tabelle. Die NULL-Zulässigkeit wird gemäß den ISO-Regeln bestimmt. Ein DBMS nach ISO kann keine leere Zeichenfolge zurückgeben. YES, wenn die Spalte NULL-Werte einschließen kann. NO, wenn die Spalte keine NULL-Werte einschließen kann. Die Spalte gibt eine leere Zeichenfolge zurück, wenn die NULL-Zulässigkeit unbekannt ist. Der für diese Spalte zurückgegebene Wert ist ein anderer als der für die NULLABLE-Spalte zurückgegebene Wert. |
SS_DATA_TYPE |
tinyint |
Der SQL Server-Datentyp, der von erweiterten gespeicherten Prozeduren verwendet wird. Weitere Informationen finden Sie unter Datentypen (Transact-SQL). |
Hinweise
sp_sproc_columns entspricht SQLProcedureColumns in ODBC. Die zurückgegebenen Informationen werden nach den Spalten PROCEDURE_QUALIFIER, PROCEDURE_OWNER, PROCEDURE_NAME geordnet und in der Reihenfolge zurückgegeben, in der die Parameter in der Prozedurdefinition angezeigt werden.
Berechtigungen
Erfordert die SELECT-Berechtigung für das Schema.