sp_sproc_columns (Transact-SQL)

Gäller för:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalysplattformssystem (PDW)SQL-analysslutpunkt i Microsoft FabricLager i Microsoft FabricSQL-databas i Microsoft Fabric

Returnerar kolumninformation för en enda lagrad procuru eller användardefinierad funktion i den aktuella miljön.

Transact-SQL syntaxkonventioner

Syntax

sp_sproc_columns
    [ [ @procedure_name = ] N'procedure_name' ]
    [ , [ @procedure_owner = ] N'procedure_owner' ]
    [ , [ @procedure_qualifier = ] N'procedure_qualifier' ]
    [ , [ @column_name = ] N'column_name' ]
    [ , [ @ODBCVer = ] ODBCVer ]
    [ , [ @fUsePattern = ] fUsePattern ]
[ ; ]

Arguments

[ @procedure_name = ] N'procedure_name'

Namnet på proceduren som används för att returnera kataloginformation. @procedure_name är nvarchar(390), med standardvärdet , %vilket betyder alla tabeller i den aktuella databasen. Wildcard-mönstermatchning stöds.

[ @procedure_owner = ] N'procedure_owner'

Namnet på ägaren av proceduren. @procedure_owner är nvarchar(384), med en standard på NULL. Wildcard-mönstermatchning stöds. Om @procedure_owner inte specificeras gäller standardprocedurernas synlighetsregler för det underliggande databashanteringssystemet (DBMS).

Om den nuvarande användaren äger en proprodur med det angivna namnet returneras information om den proceduren. Om @procedure_owner inte är specificerad och den nuvarande användaren inte äger en procedur med det angivna namnet, sp_sproc_columns leta efter en prozedur med det angivna namnet som ägs av databasägaren. Om proceduren existerar returneras information om dess kolumner.

[ @procedure_qualifier = ] N'procedure_qualifier'

Namnet på procedurkvalificeraren. @procedure_qualifier är sysname, med standardvärdet .NULL Olika DBMS-produkter stödjer tredelad namngivning för tabeller (<qualifier>.<owner>.<name>). I SQL Server representerar denna parameter databasens namn. I vissa produkter representerar den servernamnet på tabellens databasmiljö.

[ @column_name = ] N'column_name'

En enda kolumn och används när endast en kolumn med kataloginformation önskas. @column_name är nvarchar(384), med en standard på NULL. Om @column_name utelämnas returneras alla kolumner. Wildcard-mönstermatchning stöds. För maximal interoperabilitet bör gatewayklienten endast anta ISO-standardmönstermatchning (% och _ wildcard-tecken).

[ @ODBCVer = ] ODBCVer

Den version av ODBC som användes. @ODBCVer är int, med standardvärdet , 2vilket indikerar ODBC version 2.0. För mer information om skillnaderna mellan ODBC version 2.0 och ODBC version 3.0, se ODBC-specifikationen SQLProcedureColumns för ODBC version 3.0.

[ @fUsePattern = ] fUsePattern

Avgör om understrecket (_), procent (%) och parentestecknen ([ och ]) tolkas som jokertecken. @fUsePattern är bit, med standardvärdet .1 Giltiga värden är 0 (mönsterigenkänning är av) och 1 (mönstermatchning är på).

Returnera kodvärden

Ingen.

Resultatuppsättning

Kolumnnamn Datatyp Description
PROCEDURE_QUALIFIER sysname Namn på procedurkvalificeraren. Denna kolumn kan vara NULL.
PROCEDURE_OWNER sysname Namn: Företagets ägare. Denna kolumn returnerar alltid ett värde.
PROCEDURE_NAME Nvarchar(134) Procedurnamn. Denna kolumn returnerar alltid ett värde.
COLUMN_NAME sysname Kolumnnamn för varje kolumn i den TABLE_NAME returnerade. Denna kolumn returnerar alltid ett värde.
COLUMN_TYPE smallint Detta fält returnerar alltid ett värde:

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 Heltalskod för en ODBC-datatyp. Om denna datatyp inte kan mappas till en ISO-typ är NULLvärdet . Det ursprungliga datatypnamnet returneras i kolumnen TYPE_NAME .
TYPE_NAME sysname Strängrepresentation av datatypen. Detta värde är datatypnamnet som presenteras av det underliggande DBMS.
PRECISION int Antal signifikanta siffror. Returvärdet för kolumnen PRECISION är i bas 10.
LENGTH int Överför datastorleken.
SCALE smallint Antal siffror till höger om decimalpunkten.
RADIX smallint Basen för numeriska typer.
NULLABLE smallint Specificerar nullbarhet:

1 = Datatyp kan skapas som tillåter nollvärden.
0 = Nollvärden är inte tillåtna.
REMARKS Varchar(254) Beskrivning av procedurkolumnen. SQL Server returnerar inget värde för denna kolumn.
COLUMN_DEF nvarchar(4000) Standardvärdet för kolumnen.
SQL_DATA_TYPE smallint Värdet på SQL-datatypen som den visas i TYPE fältet för beskrivaren. Denna kolumn är densamma som kolumnenDATA_TYPE, förutom datumtid- och ISO-intervalldatatyperna. Denna kolumn returnerar alltid ett värde.
SQL_DATETIME_SUB smallint Date-timeISO-intervallsubkoden om värdet av SQL_DATA_TYPE är SQL_DATETIME eller SQL_INTERVAL. För datatyper andra än datumtid och ISO-intervall är NULLdetta fält .
CHAR_OCTET_LENGTH int Maximal längd i byte för en kolumn för tecken eller binär datatyp. För alla andra datatyper returnerar denna kolumn en NULL.
ORDINAL_POSITION int Ordningsposition för kolumnen i tabellen. Den första kolumnen i tabellen är 1. Denna kolumn returnerar alltid ett värde.
IS_NULLABLE Varchar(254) Nullbarhet för kolumnen i tabellen. ISO-regler följs för att avgöra nullbarhet. Ett ISO-kompatibelt DBMS kan inte returnera en tom sträng.

Visar YES om kolumnen kan inkludera nollpunkter, och NO om kolumnen inte kan inkludera nollor.

Denna kolumn returnerar en sträng av nolllängd om nullbarhet är okänd.

Värdet som returneras för denna kolumn skiljer sig från värdet som returneras för kolumnen NULLABLE .
SS_DATA_TYPE tinyint SQL Server-datatyp som används av utökade lagrade procedurer. För mer information, se Datatyper (Transact-SQL).

Anmärkningar

sp_sproc_columns motsvarar SQLProcedureColumns i ODBC. Resultaten som returneras är ordnade efter PROCEDURE_QUALIFIER, PROCEDURE_OWNER, PROCEDURE_NAME, och den ordning som parametrarna förekommer i procedurdefinitionen.

Permissions

Kräver SELECT tillstånd på schemat.