SQLColumns
Berlaku untuk: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)
SQLColumns mengembalikan SQL_SUCCESS apakah ada nilai untuk parameter CatalogName, TableName, atau ColumnName atau tidak. SQLFetch mengembalikan SQL_NO_DATA ketika nilai yang tidak valid digunakan dalam parameter ini.
Catatan
Untuk jenis nilai besar, semua parameter panjang akan dikembalikan dengan nilai SQL_SS_LENGTH_UNLIMITED.
SQLColumns dapat dijalankan pada kursor server statis. Upaya untuk menjalankan SQLColumns pada kursor yang dapat diperbarui (dinamis atau set kunci) akan mengembalikan SQL_SUCCESS_WITH_INFO menunjukkan bahwa jenis kursor telah diubah.
Driver ODBC Klien Asli SQL Server mendukung informasi pelaporan untuk tabel di server tertaut dengan menerima nama dua bagian untuk parameter CatalogName : Linked_Server_Name.Catalog_Name.
Untuk ODBC 2.x aplikasi yang tidak menggunakan kartubebas di TableName, SQLColumns mengembalikan informasi tentang tabel apa pun yang namanya cocok dengan TableName dan dimiliki oleh pengguna saat ini. Jika pengguna saat ini tidak memiliki tabel yang namanya cocok dengan parameter TableName , SQLColumns mengembalikan informasi tentang tabel apa pun yang dimiliki oleh pengguna lain di mana nama tabel cocok dengan parameter TableName . Untuk ODBC 2.aplikasi x menggunakan kartubebas, SQLColumns mengembalikan semua tabel yang namanya cocok dengan TableName. Untuk ODBC 3.x aplikasi SQLColumns mengembalikan semua tabel yang namanya cocok dengan TableName terlepas dari pemilik atau apakah kartubebas digunakan.
Tabel berikut mencantumkan kolom yang dikembalikan oleh kumpulan hasil:
Nama kolom | Deskripsi |
---|---|
DATA_TYPE | Mengembalikan SQL_VARCHAR, SQL_VARBINARY, atau SQL_WVARCHAR untuk jenis data varchar(maks ). |
TYPE_NAME | Mengembalikan "varchar", "varbinary", atau "nvarchar" untuk jenis data varchar(max), varbinary(max), dan nvarchar(max ). |
COLUMN_SIZE | Mengembalikan SQL_SS_LENGTH_UNLIMITED untuk jenis data varchar(maks) yang menunjukkan bahwa ukuran kolom tidak terbatas. |
BUFFER_LENGTH | Mengembalikan SQL_SS_LENGTH_UNLIMITED untuk jenis data varchar(maks) yang menunjukkan bahwa ukuran buffer tidak terbatas. |
SQL_DATA_TYPE | Mengembalikan SQL_VARCHAR, SQL_VARBINARY, atau SQL_WVARCHAR untuk jenis data varchar(maks ). |
CHAR_OCTET_LENGTH | Mengembalikan panjang maksimum karakter atau kolom biner. Mengembalikan 0 untuk menunjukkan bahwa ukurannya tidak terbatas. |
SS_XML_SCHEMACOLLECTION_CATALOG_NAME | Mengembalikan nama katalog tempat nama kumpulan skema XML ditentukan. Jika nama katalog tidak dapat ditemukan, maka variabel ini berisi string kosong. |
SS_XML_SCHEMACOLLECTION_SCHEMA_NAME | Mengembalikan nama skema tempat nama kumpulan skema XML ditentukan. Jika nama skema tidak dapat ditemukan, maka variabel ini berisi string kosong. |
SS_XML_SCHEMACOLLECTION_NAME | Mengembalikan nama kumpulan skema XML. Jika nama tidak dapat ditemukan, maka variabel ini berisi string kosong. |
SS_UDT_CATALOG_NAME | Nama katalog yang berisi UDT (jenis yang ditentukan pengguna). |
SS_UDT_SCHEMA_NAME | Nama skema yang berisi UDT. |
SS_UDT_ASSEMBLY_TYPE_NAME | Nama UDT yang memenuhi syarat assembly. |
Untuk UDT, kolom TYPE_NAME yang ada digunakan untuk menunjukkan nama UDT; oleh karena itu tidak ada kolom tambahan untuk itu harus ditambahkan ke kumpulan hasil SQLColumns atau SQLProcedureColumns. DATA_TYPE untuk kolom atau parameter UDT SQL_SS_UDT.
Untuk UDT parameter, Anda dapat menggunakan deskriptor khusus driver baru yang ditentukan di atas untuk mendapatkan atau mengatur properti metadata tambahan dari UDT, jika server mengembalikan atau memerlukan informasi ini.
Ketika klien terhubung ke SQL Server dan memanggil SQLColumns, menggunakan nilai NULL atau wild card untuk parameter input katalog tidak akan mengembalikan informasi dari katalog lain. Sebaliknya, hanya informasi tentang katalog saat ini yang akan dikembalikan. Klien dapat terlebih dahulu memanggil SQLTables untuk menentukan di katalog mana tabel yang diinginkan berada. Klien kemudian dapat menggunakan nilai katalog tersebut untuk parameter input katalog dalam panggilannya ke SQLColumns untuk mengambil informasi tentang kolom dalam tabel tersebut.
Parameter SQLColumns dan Table-Valued
Tataan hasil yang dikembalikan oleh SQLColumns bergantung pada pengaturan SQL_SOPT_SS_NAME_SCOPE. Untuk informasi selengkapnya, lihat SQLSetStmtAttr. Kolom berikut telah ditambahkan untuk parameter bernilai tabel:
Nama kolom | Jenis Data | Konten |
---|---|---|
SS_IS_COMPUTED | Smallint | Untuk kolom dalam TABLE_TYPE, ini SQL_TRUE jika kolom adalah kolom komputasi; jika tidak, SQL_FALSE. |
SS_IS_IDENTITY | Smallint | SQL_TRUE jika kolom adalah kolom identitas; jika tidak, SQL_FALSE. |
Untuk informasi selengkapnya tentang parameter bernilai tabel, lihat Parameter Bernilai Tabel (ODBC).
Dukungan SQLColumns untuk Fitur Tanggal dan Waktu yang Ditingkatkan
Untuk informasi tentang nilai yang dikembalikan untuk jenis tanggal/waktu, lihat Metadata Katalog.
Untuk informasi selengkapnya, lihat Peningkatan Tanggal dan Waktu (ODBC).
Dukungan SQLColumns untuk UDT CLR Besar
SQLColumns mendukung jenis yang ditentukan pengguna (UDT) CLR besar. Untuk informasi selengkapnya, lihat Jenis Yang Ditentukan Pengguna (ODBC) CLR Besar.
Dukungan SQLColumns untuk Kolom Jarang
Dua kolom khusus SQL Server telah ditambahkan ke tataan hasil untuk SQLColumns:
Nama kolom | Jenis data | Deskripsi |
---|---|---|
SS_IS_SPARSE | Smallint | Jika kolom adalah kolom jarang, kolom ini SQL_TRUE; jika tidak, SQL_FALSE. |
SS_IS_COLUMN_SET | Smallint | Jika kolom adalah kolom column_set , ini SQL_TRUE; jika tidak, SQL_FALSE. |
Sesuai dengan spesifikasi ODBC, SS_IS_SPARSE dan SS_IS_COLUMN_SET muncul sebelum semua kolom khusus driver yang ditambahkan ke versi SQL Server yang lebih lama dari SQL Server 2008 (10.0.x), dan setelah semua kolom yang diamanatkan oleh ODBC itu sendiri.
Tataan hasil yang dikembalikan oleh SQLColumns bergantung pada pengaturan SQL_SOPT_SS_NAME_SCOPE. Untuk informasi selengkapnya, lihat SQLSetStmtAttr.
Untuk informasi selengkapnya tentang kolom jarang di ODBC, lihat Dukungan Kolom Jarang (ODBC).