Sdílet prostřednictvím


sp_columns_ex (Transact-SQL)

platí pro:SQL Server

Vrátí sloupcové informace, jeden řádek na sloupec, pro specifikované propojené serverové tabulky. sp_columns_ex vrací informace o sloupcích pouze pro konkrétní sloupec, pokud je @column_name specifikován.

Transact-SQL konvence syntaxe

Syntaxe

sp_columns_ex
    [ @table_server = ] N'table_server'
    [ , [ @table_name = ] N'table_name' ]
    [ , [ @table_schema = ] N'table_schema' ]
    [ , [ @table_catalog = ] N'table_catalog' ]
    [ , [ @column_name = ] N'column_name' ]
    [ , [ @ODBCVer = ] ODBCVer ]
[ ; ]

Arguments

[ @table_server = ] N'table_server'

Název propojeného serveru, pro který se vracejí informace o sloupcích. @table_server je sysname, bez výchozího nastavení.

[ @table_name = ] 'Ntable_name'

Název tabulky, pro kterou se vracejí informace o sloupcích. @table_name je sysname s výchozím nastavením .NULL

[ @table_schema = ] N'table_schema'

Název schématu tabulky, pro kterou se vracejí informace o sloupcích. @table_schema je sysname s výchozím nastavením NULL.

[ @table_catalog = ] N'table_catalog'

Katalogový název tabulky, pro kterou se vracejí informace o sloupcích. @table_catalog je sysname s výchozím nastavením NULL.

[ @column_name = ] N'column_name'

Název sloupce databáze, pro který se poskytují informace. @column_name je sysname s výchozím nastavením NULL.

[ @ODBCVer = ] ODBCVer

Verze ODBC, která se používá. @ODBCVer je int, s výchozím nastavením 2. To naznačuje ODBC verzi 2. Platné hodnoty jsou 2 nebo 3. Pro informace o rozdílech v chování mezi verzemi 2 a 3 viz specifikace ODBC SQLColumns .

Hodnoty návratového kódu

Žádné.

Sada výsledků

Název sloupce Datový typ Description
TABLE_CAT sysname Tabulka nebo zobrazení kvalifikačního jména. Různé produkty DBMS podporují třífázové pojmenování tabulek (<qualifier>.<owner>.<name>). V SQL Serveru tento sloupec představuje název databáze. V některých produktech představuje název serveru databázového prostředí tabulky. Toto pole může být .NULL
TABLE_SCHEM sysname Tabulka nebo zobrazení jména vlastníka. V SQL Serveru tento sloupec představuje jméno uživatele databáze, který tabulku vytvořil. Toto pole vždy vrací hodnotu.
TABLE_NAME sysname Tabulka nebo zobrazení jméno. Toto pole vždy vrací hodnotu.
COLUMN_NAME sysname Název sloupce pro každý sloupec vráceného sloupce TABLE_NAME . Toto pole vždy vrací hodnotu.
DATA_TYPE smallint Hodnota int , která odpovídá indikátorům typu ODBC. Pokud je to datový typ, který nelze mapovat na typ ODBC, tato hodnota je NULL. Nativní název datového typu se vrací ve sloupci TYPE_NAME .
TYPE_NAME Varchar(13) Řetězec reprezentující datový typ. Základní DBMS představuje tento název datového typu.
COLUMN_SIZE int Počet významných číslic. Návratová hodnota sloupce PRECISION je v soustavě 10.
BUFFER_LENGTH int Velikost přenosu dat.1
DECIMAL_DIGITS smallint Počet číslic napravo od desetinné čárky.
NUM_PREC_RADIX smallint Základ pro numerické datové typy.
NULLABLE smallint Specifikuje nulovatelnost.

1 = NULL je možné.
0 = NOT NULL.
REMARKS varchar(254) Toto pole vždy vrací NULL.
COLUMN_DEF varchar(254) 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 sloupecDATA_TYPE, kromě datových typů intervalů pro datetime a SQL-92. Tento sloupec vždy vrací hodnotu.
SQL_DATETIME_SUB smallint Podtyp kód pro datové typy datového času a intervalů v SQL-92. Pro jiné datové typy tento sloupec vrací NULL.
CHAR_OCTET_LENGTH int Maximální délka sloupce znaku nebo celočíselné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. DBMS kompatibilní s ISO SQL nemůže vrátit prázdný řetězec.

YES = Sloupec může obsahovat NULL.
NO = Sloupec nemůže obsahovat NULL.

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 Datový typ SQL Serveru, používaný rozšířenými uloženými procedurami.

Pro více informací viz Přehled ODBC.

Poznámky

  • sp_columns_ex se provádí dotazem na řádkovou sadu COLUMNS rozhraní poskytovatele OLE DB odpovídající IDBSchemaRowset@table_server. Parametry @table_name, @table_schema, @table_catalog a @column_name jsou předávány tomuto rozhraní, aby omezily vrácené řádky.

  • sp_columns_ex vrátí prázdnou sadu výsledků, pokud poskytovatel OLE DB určeného propojeného serveru nepodporuje COLUMNS řádkovou sadu IDBSchemaRowset rozhraní.

  • sp_columns_ex splňuje požadavky na vymezené identifikátory. Další informace naleznete v tématu Identifikátory databáze.

Povolení

Vyžaduje SELECT povolení ke schématu.

Examples

Následující příklad vrací datový typ sloupce JobTitleHumanResources.Employee tabulky v databázi AdventureWorks2025 na propojeném serveru Seattle1.

EXECUTE sp_columns_ex 'Seattle1',
    'Employee',
    'HumanResources',
    'AdventureWorks2022',
    'JobTitle';