Bagikan melalui


Table-Valued Penemuan Jenis Parameter (driver OLE DB)

Berlaku untuk: SQL Server Azure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics AnalyticsPlatform System (PDW)

Unduh driver OLE DB

Konsumen-yaitu, aplikasi klien yang menggunakan Driver OLE DB untuk SQL Server-dapat menemukan jenis setiap parameter perintah jika teks perintah telah diberikan kepada Penyedia OLE DB. Setelah jenis parameter bernilai tabel diketahui, konsumen dapat menemukan informasi metadata untuk setiap kolom individual dari parameter bernilai tabel.

Informasi jenis parameter prosedur didukung oleh ICommandWithParameters::GetParameterInfo untuk sebagian besar jenis parameter. Dimulai dengan SQL Server 2005 (9.x), dengan pengenalan jenis yang ditentukan pengguna dan jenis data xml, metode GetParameterInfo tidak cukup untuk tujuan ini karena tidak mungkin untuk memberikan informasi jenis yang ditentukan pengguna (nama, skema, dan katalog) melalui ICommandWithParameters. Antarmuka baru, ISSCommandWithParameters, didefinisikan untuk memberikan informasi jenis yang diperluas.

Untuk parameter bernilai tabel, Anda juga menggunakan antarmuka ISSCommandWithParameters untuk menemukan informasi terperinci. Klien memanggil ISSCommandWithParameters::GetParameterInfo setelah menyiapkan objek perintah. Untuk parameter bernilai tabel, anggota wType struktur DBPARAMINFO diatur ke DBTYPE_TABLE oleh penyedia. Bidang ulParamSize dari struktur DBPARAMINFO memiliki nilai ~0.

Konsumen kemudian akan meminta properti tambahan (nama katalog jenis parameter bernilai tabel, nama skema jenis parameter bernilai tabel, nama jenis parameter bernilai tabel, pengurutan kolom, dan kolom default) dengan menggunakan ISSCommandWithParameters::GetParameterProperties.

Setelah nama jenis diketahui, untuk mengambil informasi kolom individual, konsumen harus memanggil IOpenRowset::OpenRowsetor mendapatkan kumpulan baris DBSCHEMA_TABLE_TYPE_COLUMNS dengan menentukan nama jenis parameter bernilai tabel sebagai nama tabel.

Lihat juga

Parameter Bernilai Tabel (OLE DB)
Gunakan Parameter Table-Valued (OLE DB)