Tablo Valued parametre satır kümesi oluşturma

Tüketiciler için tablo değerli parametreleri herhangi bir satır kümesi nesnesi sağlayabilir, ancak normal satır kümesi nesneleri arka uç veri depolarına karşı uygulanan ve bu nedenle sınırlı bir performans sağlar. Bu nedenle, SQL Serveryerel istemci ole db sağlayıcısını sağlar bellekteki verileri üzerine bir özel satır kümesi nesnesi oluşturmak tüketicilerin. Bu özel, bellek satır kümesi nesnesi, bir tablo valued parametre satır kümesi adlı yeni bir com nesnesidir. Bu işlev parametre kümesi için benzer sağlar.

Tablo valued parametre satır kümesi nesneleri açıkça tüketici için giriş parametreleri aracılığıyla birden çok oturum düzeyi arabirimi oluşturulur. Her tablo değerli parametre tablo değerli parametresi satır kümesi nesnesi örneği yoktur. Tüketici tablo valued parametre satır kümesi nesneleri (statik senaryo) zaten bilinen meta veri bilgileri sağlayarak ya da sağlayıcı arabirimi (dinamik senaryo) keşfetme oluşturabilirsiniz. Aşağıdaki bölümler, bu iki senaryoyu açıklamaktadır.

Statik senaryo

Tür bilgileri bilindiğinde, tüketici kullanır ITableDefinitionWithConstraints::CreateTableWithConstraintskarşılık gelen tablo değerli bir parametre için parametre tablo değerli satır kümesi nesnesi örneğini.

guidAlanı ( pTableID parametresi) özel GUID (CLSID_ROWSET_TVP) içerir. pwszNameÜye içeren tüketici örneğini istiyor tablo değerli parametre türü adı. eKindAlan DBKIND_GUID_NAME için ayarlanmış olabilir. Bu ad, ad hoc sql deyimi ne zaman gereklidir; bir yordam çağrısı ise isteğe bağlı bir addır.

Tüketici için toplama, geçer pUnkOuterparametresi ile kontrol IUnknown.

Böylece tüketici özellikleri ayarlamak için beklenmiyor tablo değerli parametresi satır kümesi nesnesi özelliklerini, salt okunurdur rgPropertySets.

İçin rgPropertySetsher dbcolumndesc yapısı, tüketici üyesi her sütun için ek özellikler belirtebilirsiniz. Bu özellikler dbpropset_sqlservercolumn özellik kümesi aittir. Onlar hesaplanan belirtmek ve her sütun için varsayılan ayarları sağlar. Onlar da nullability ve kimlik gibi varolan sütun özelliklerini destekler.

Bir tablo değerli parametresi satır kümesi nesnesi ilgili bilgi almak için tüketici kullanır IRowsetInfo::GetProperties.

Hesaplanan, boş, benzersiz, hakkında bilgi almak ve her sütunun, tüketici kullanımı durumunu güncelleştirmek için IColumnsRowset::GetColumnsRowsetveya IColumnsInfo::GetColumnInfo. Bu yöntemlerin her tablo valued parametre satır kümesi sütun hakkında ayrıntılı bilgi sağlar.

Tüketici her sütun tablo değerli parametre türü belirtir. Bu tablo oluşturulduğunda nasıl sütun belirtilen için benzer SQL Server. Tüketici bir tablo valued parametre satır kümesi nesnesinden alır SQL Serveryerel istemci ole db sağlayıcısı aracılığıyla ppRowsetparametresi çıktı.

Dinamik senaryo

Tüketici türü bilgileri yoksa, kullanmalıyım IOpenRowset::OpenRowsettablo valued parametre satır kümesi nesneleri oluşturmaya. Tüm tüketici sağlayıcıya sağlamak zorunda olduğunu adı yazın.

Bu senaryoda, sağlayıcı adına tüketici sunucudan bir tablo değerli parametresi satır kümesi nesnesi türü bilgilerini alır.

pTableIDVe pUnkOuterparametreleri gibi statik senaryo ayarlanmalıdır. SQL ServerYerel istemci ole db sağlayıcısı sonra türü bilgileri (sütun bilgileri ve kısıtlamaları) sunucusundan alır ve ile bir tablo değerli parametresi satır kümesi nesnesi döndürür ppRowsetparametresi. Bu işlem sunucusu ile iletişim gerektirir ve bu nedenle de statik senaryo gerçekleştirmez. Dinamik senaryo sadece parametreli prosedür çağrıları ile çalışır.

Ayrıca bkz.

Görevler

Tablo Valued Parametreler (ole db) kullanma

Kavramlar

Tablo Valued Parametreler (ole db)