Sdílet prostřednictvím


sp_sproc_columns (Transact-SQL)

Platí pro:SQL ServerAzure SQL DatabaseSpravovaná instance Azure SQLAzure Synapse AnalyticsAnalytics Platform System (PDW)Koncový bod analýzy SQL v Microsoft FabricSklad v Microsoft FabricDatabáze SQL v Microsoft Fabric

Vrací sloupcové informace pro jednu uloženou proceduru nebo uživatelem definovanou funkci v aktuálním prostředí.

Transact-SQL konvence syntaxe

Syntaxe

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'

Název postupu používaného k vrácení informací z katalogu. @procedure_name je nvarchar(390), s výchozím , %což znamená všechny tabulky v aktuální databázi. Je podporováno porovnávání vzorů divoké karty.

[ @procedure_owner = ] N'procedure_owner'

Jméno majitele zákroku. @procedure_owner je nvarchar(384), s výchozím hodnotou NULL. Je podporováno porovnávání vzorů divoké karty. Pokud @procedure_owner není specifikováno, platí výchozí pravidla pro viditelnost procedur v základním systému správy databází (DBMS).

Pokud aktuální uživatel vlastní proceduru s tímto jménem, informace o této procedurě se vrátí. Pokud @procedure_owner není specifikováno a současný uživatel nemá proceduru s tímto jménem, hledejte proceduru s tímto jménem, sp_sproc_columns kterou vlastní vlastník databáze. Pokud procedura existuje, vrátí se informace o jejích sloupcích.

[ @procedure_qualifier = ] N'procedure_qualifier'

Název kvalifikátoru postupu. @procedure_qualifier je sysname s výchozím nastavením NULL. Různé produkty DBMS podporují třífázové pojmenování tabulek (<qualifier>.<owner>.<name>). V SQL Serveru tento parametr představuje název databáze. V některých produktech představuje název serveru databázového prostředí tabulky.

[ @column_name = ] N'column_name'

Jeden sloupec a používá se, když je požadován pouze jeden sloupec katalogových informací. @column_name je nvarchar(384), s výchozím hodnotou NULL. Pokud je @column_name vynechán, všechny sloupce se vrátí. Je podporováno porovnávání vzorů divoké karty. Pro maximální interoperabilitu by klient brány měl předpokládat pouze shodu vzorů podle standardu ISO (znaky % a _ jako žolíky).

[ @ODBCVer = ] ODBCVer

Verze ODBC, která se používá. @ODBCVer je int, s výchozím , 2což označuje ODBC verzi 2.0. Pro více informací o rozdílech mezi verzí ODBC 2.0 a ODBC verzí 3.0 viz specifikace ODBC SQLProcedureColumns pro ODBC verzi 3.0.

[ @fUsePattern = ] fUsePattern

Určuje, zda jsou znaky pod podtržítek (_), procento (%) a závorka ([ a ]) interpretovány jako žolíkové znaky. @fUsePattern je bit, s výchozím nastavením 1. Platné hodnoty jsou 0 (pattern matching je vypnuté) a 1 (pattern matching je zapnuté).

Hodnoty návratového kódu

Žádné.

Sada výsledků

Název sloupce Datový typ Description
PROCEDURE_QUALIFIER sysname Název kvalifikace postupu. Tento sloupec může být .NULL
PROCEDURE_OWNER sysname Jméno majitele zákroku. Tento sloupec vždy vrací hodnotu.
PROCEDURE_NAME nvarchar(134) Název procedury Tento sloupec vždy vrací hodnotu.
COLUMN_NAME sysname Název sloupce pro každý sloupec vráceného sloupce TABLE_NAME . Tento sloupec vždy vrací hodnotu.
COLUMN_TYPE smallint Toto pole vždy vrací hodnotu:

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 Celočíselný kód pro datový typ ODBC. Pokud tento datový typ nelze namapovat na ISO typ, hodnota je NULL. Nativní název datového typu se vrací ve sloupci TYPE_NAME .
TYPE_NAME sysname Reprezentace řetězce datového typu. Tato hodnota je název datového typu, jak je prezentován podkladovým DBMS.
PRECISION int Počet významných číslic. Návratová hodnota sloupce PRECISION je v soustavě 10.
LENGTH int Velikost přenosu dat.
SCALE smallint Počet číslic napravo od desetinné čárky.
RADIX smallint Základ pro číselné typy.
NULLABLE smallint Specifikuje nulovatelnost:

1 = Lze vytvořit typ dat, který umožňuje nulové hodnoty.
0 = Nulové hodnoty nejsou povoleny.
REMARKS varchar(254) Popis sloupce postupu. SQL Server nevrací hodnotu pro tento sloupec.
COLUMN_DEF nvarchar(4000) Výchozí hodnota sloupce
SQL_DATA_TYPE smallint Hodnota SQL datového typu, jak se objevuje v TYPE poli deskriptoru. Tento sloupec je stejný jako sloupec DATA_TYPE , kromě datových typů datového času a ISO intervalu . Tento sloupec vždy vrací hodnotu.
SQL_DATETIME_SUB smallint Podkód intervaluISO v date-čase, pokud hodnota je SQL_DATA_TYPE nebo SQL_DATETIMESQL_INTERVAL. Pro datové typy jiné než datetime a ISO interval je toto pole .NULL
CHAR_OCTET_LENGTH int Maximální délka znaku nebo sloupce binárního datového typu v bajtech. Pro všechny ostatní datové typy tento sloupec vrací .NULL
ORDINAL_POSITION int Ordinální pozice sloupce v tabulce. První sloupec v tabulce je .1 Tento sloupec vždy vrací hodnotu.
IS_NULLABLE varchar(254) Nulovatelnost sloupce v tabulce. Pravidla ISO se dodržují pro určení neplatnosti. ISO kompatibilní DBMS nemůže vrátit prázdný řetězec.

Ukazuje, YES zda sloupec může obsahovat null, a NO zda sloupec nemůže nulls obsahovat.

Tento sloupec vrací řetězec nulové délky, pokud není nulovost známa.

Hodnota vrácená pro tento sloupec se liší od hodnoty vrácené pro sloupec NULLABLE .
SS_DATA_TYPE tinyint Typ dat SQL Server používaný rozšířenými uloženými procedurami. Pro více informací viz Datové typy (Transact-SQL).

Poznámky

sp_sproc_columns je ekvivalentní s v SQLProcedureColumns ODBC. Výsledky vrácené jsou uspořádány podle PROCEDURE_QUALIFIER, PROCEDURE_OWNER, PROCEDURE_NAME, a pořadí, v jakém se parametry objevují v definici postupu.

Povolení

Vyžaduje SELECT povolení ke schématu.