Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
platí pro:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytický platformní systém (PDW)
SQLColumns vrací SQL_SUCCESS to, zda existují hodnoty pro parametry CatalogName, TableName nebo ColumnName . SQLFetch vrací SQL_NO_DATA, když jsou v těchto parametrech použity neplatné hodnoty.
Note
Pro typy s velkými hodnotami budou všechny parametry délky vráceny s hodnotou SQL_SS_LENGTH_UNLIMITED.
SQLColumns lze vykonávat na statickém kurzoru serveru. Pokus o spuštění SQLColumns na aktualizovatelném (dynamickém nebo klíčovém) kurzoru vrátí SQL_SUCCESS_WITH_INFO indikaci, že typ kurzoru byl změněn.
Ovladač SQL Server Native Client ODBC podporuje reportování informací pro tabulky na propojených serverech přijetím dvoudílného názvu parametru CatalogName: Linked_Server_Name.Catalog_Name.
Pro ODBC 2. x aplikace, které v TableName nepoužívají žolíky, SQLColumns vrací informace o všech tabulkách, jejichž názvy odpovídají TableName a jsou vlastněny aktuálním uživatelem. Pokud současný uživatel nevlastní žádnou tabulku, jejíž název odpovídá parametru TableName , SQLColumns vrátí informace o tabulkách vlastněných jinými uživateli, kde název tabulky odpovídá parametru TableName . Pro ODBC 2. x aplikací používajících divoké znaky, SQLColumns vrací všechny tabulky, jejichž názvy odpovídají TableName. Pro ODBC 3. x aplikace SQLColumns vrací všechny tabulky, jejichž názvy odpovídají TableName bez ohledu na vlastníka nebo na to, zda jsou použity žolíky.
Následující tabulka uvádí sloupce vrácené výslednou sadou:
| Název sloupce | Description |
|---|---|
| datový typ | Vrací SQL_VARCHAR, SQL_VARBINARY nebo SQL_WVARCHAR pro datové typy varchar(max). |
| TYPE_NAME | Vrací "varchar", "varbinary" nebo "nvarchar" pro datové typy varchar(max),varbinary(max) a nvarchar(max ). |
| COLUMN_SIZE | Vrací SQL_SS_LENGTH_UNLIMITED pro datové typy varchar(max), což znamená, že velikost sloupce je neomezená. |
| DÉLKA_BUFFERU | Vrací SQL_SS_LENGTH_UNLIMITED pro datové typy varchar(max), což znamená, že velikost bufferu je neomezená. |
| SQL_DATOVÝ_TYP | Vrací SQL_VARCHAR, SQL_VARBINARY nebo SQL_WVARCHAR pro datové typy varchar(max). |
| CHAR_OCTET_LENGTH | Vrátí maximální délku sloupce s char nebo binárním souborem. Vrací 0, což značí, že velikost není omezená. |
| SS_XML_SCHEMACOLLECTION_CATALOG_NAME | Vrací název katalogu, kde je definován název kolekce XML schématu. Pokud nelze najít název katalogu, pak tato proměnná obsahuje prázdný řetězec. |
| SS_XML_SCHEMACOLLECTION_SCHEMA_NAME | Vrací název schématu, kde je definován název kolekce XML schématu. Pokud nelze název schématu najít, pak tato proměnná obsahuje prázdný řetězec. |
| SS_XML_SCHEMACOLLECTION_NAME | Vrací název kolekce XML schématu. Pokud jméno nelze najít, pak tato proměnná obsahuje prázdný řetězec. |
| SS_UDT_CATALOG_NAME | Název katalogu obsahujícího UDT (uživatelsky definovaný typ). |
| SS_UDT_SCHEMA_NAME | Název schématu obsahujícího UDT. |
| SS_UDT_ASSEMBLY_TYPE_NAME | Název UDT je kvalifikovaný pro shromáždění. |
U UDT se stávající sloupec TYPE_NAME používá k označení názvu UDT; proto by neměl být přidán žádný další sloupec pro něj do výsledné sady SQLColumns nebo SQLProcedureColumns. DATA_TYPE pro sloupec nebo parametr UDT je SQL_SS_UDT.
Pro UDT parametrů můžete použít nové specifické deskriptory pro ovladače definované výše k získání nebo nastavení dalších vlastností metadat UDT, pokud server vrátí nebo vyžaduje tyto informace.
Když se klient připojí k SQL Server a zavolá SQLColumns, použití NULL nebo divokých karet pro vstupní parametr katalogu nevrátí informace z jiných katalogů. Místo toho budou vráceny pouze informace o aktuálním katalogu. Klient může nejprve vyvolat SQLTables, aby zjistil, ve kterém katalogu se požadovaná tabulka nachází. Klient pak může tuto hodnotu katalogu použít pro vstupní parametr katalogu ve svém volání SQLColumns k získání informací o sloupcích v této tabulce.
SQLColumns a Table-Valued parametry
Výsledná sada vrácená SQLColumns závisí na nastavení SQL_SOPT_SS_NAME_SCOPE. Pro více informací viz SQLSetStmtAttr. Byly přidány následující sloupce pro tabulkové parametry:
| Název sloupce | Datový typ | Obsah |
|---|---|---|
| SS_IS_COMPUTED | Smallint | Pro sloupec v TABLE_TYPE je to SQL_TRUE, pokud je sloupec vypočtený sloupec; Jinak SQL_FALSE. |
| SS_IS_IDENTITY | Smallint | SQL_TRUE pokud je sloupec identifikační; Jinak SQL_FALSE. |
Pro více informací o tabulkových parametrech viz Table-Valued Parametry (ODBC).
Podpora SQLColumns pro vylepšené funkce data a času
Pro informace o hodnotách vrácených pro typy dat/čas viz Metadata katalogu.
Další informace naleznete v tématu vylepšení data a času (ODBC).
SQLColumns podpora pro velké CLR UDT
SQLColumns podporuje velké uživatelsky definované typy CLR (UDT). Další informace najdete v tématu
SQLColumns podpora řídkých sloupců
Do sady výsledků pro SQLColumns byly přidány dva sloupce specifické pro SQL Server:
| Název sloupce | Datový typ | Description |
|---|---|---|
| SS_IS_SPARSE | Smallint | Pokud je sloupec řídký, je to SQL_TRUE; Jinak SQL_FALSE. |
| SS_IS_COLUMN_SET | Smallint | Pokud je sloupec column_set sloupec, je to SQL_TRUE; Jinak SQL_FALSE. |
V souladu se specifikací ODBC se SS_IS_SPARSE a SS_IS_COLUMN_SET objevují před všemi sloupci specifickými pro ovladače, které byly přidány do SQL Server verzí dříve než SQL Server 2008 (10.0.x), a za všemi sloupci nařízenými samotným ODBC.
Výsledná sada vrácená SQLColumns závisí na nastavení SQL_SOPT_SS_NAME_SCOPE. Pro více informací viz SQLSetStmtAttr.
Pro více informací o řídkých sloupcích v ODBC viz Sparse Columns Support (ODBC).