SQLColumns
SQLColumns
mengembalikan SQL_SUCCESS apakah ada atau tidak nilai untuk parameter CatalogName, TableName, atau ColumnName . 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 mengeksekusi SQLColumns
pada kursor yang dapat diperbarui (dinamis atau set kunci) akan mengembalikan SQL_SUCCESS_WITH_INFO menunjukkan bahwa jenis kursor telah diubah.
Driver SQL Server Native Client ODBC mendukung informasi pelaporan untuk tabel di server tertaut dengan menerima nama dua bagian untuk parameter CatalogName: Linked_Server_Name.Catalog_Name.
Untuk ODBC 2. aplikasi x 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. aplikasiSQLColumns
x mengembalikan semua tabel yang namanya cocok dengan TableName terlepas dari pemilik atau apakah wildcard digunakan.
Tabel berikut ini 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(max) 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 kolom karakter atau 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 perakitan. |
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 SQLColumns
hasil 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 pertama-tama dapat 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 tergantung 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 | Kecil | Untuk kolom dalam TABLE_TYPE, ini SQL_TRUE jika kolom adalah kolom komputasi; jika tidak, SQL_FALSE. |
SS_IS_IDENTITY | Kecil | 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 yang besar. Untuk informasi selengkapnya, lihat Jenis User-Defined CLR Besar (ODBC).
Dukungan SQLColumns untuk Kolom Jarang
Dua SQL Server kolom tertentu 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 column_set kolom , 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 lebih lama dari SQL Server 2008, dan setelah semua kolom yang diamanatkan oleh ODBC itu sendiri.
Tataan hasil yang dikembalikan oleh SQLColumns tergantung 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).