Partager via


Prise en charge du type de paramètre table OLE DB

Cette rubrique décrit la prise en charge du type OLE DB pour les paramètres table.

Objet d'ensemble de lignes de paramètre table

Vous pouvez créer un objet d'ensemble de lignes spécialisé pour des paramètres table. Vous créez l'objet d'ensemble de lignes de paramètre table à l'aide de ITableDefinitionWithConstraints::CreateTableWithConstraints ou IOpenRowset::OpenRowset. Pour cela, affectez la valeur DBKIND_GUID_NAME au membre eKind du paramètre pTableID et fournissez le CLSID_ROWSET_INMEMORY comme membre guid. Le nom de type de serveur pour le paramètre table doit être spécifié dans le membre pwszName de pTableID lors de l'utilisation de IOpenRowset::OpenRowset. L'objet d'ensemble de lignes de paramètre table se comporte comme un objet Fournisseur OLE DB SQL Server Native Client normal.

const GUID CLSID_ROWSET_TVP = 
{0xc7ef28d5, 0x7bee, 0x443f, {0x86, 0xda, 0xe3, 0x98, 0x4f, 0xcd, 0x4d, 0xf9}};

CoType RowsetTVP
{
[mandatory] interface IAccessor;
[mandatory] interface IColumnsInfo;
[mandatory] interface IConvertType;
[mandatory] interface IRowset;
[mandatory] interface IRowsetInfo;
[optional]  interface IColumnsRowset;
[optional]  interface IRowsetChange;
[optional]  interface ISupportErrorInfo;
};

DBTYPE_TABLE

DBTYPE_TABLE est un nouveau type qui représente un type de table. Ce type spécifie des paramètres table dans différentes interfaces OLE DB où un DBTYPE est requis.

#define DBTYPE_TABLE (143)

DBTYPE_TABLE a le même format que DBTYPE_IUNKNOWN. Il s'agit d'un pointeur vers un objet dans le tampon de données. Pour une spécification complète dans les liaisons, le consommateur remplit la mémoire tampon DBOBJECT, avec iid défini sur l'une des interfaces d'objet d'ensemble de lignes (IID_IRowset). Si aucun DBOBJECT n'est spécifié dans les liaisons, IID_IRowset est supposé.

Les conversions vers et à partir de DBTYPE_TABLE pour tout autre type ne sont pas prises en charge. IConvertType::CanConvert retourne S_FALSE pour les conversions non prises en charge pour toute demande autre qu'une conversion DBTYPE_TABLE à DBTYPE_TABLE. Cela suppose DBCONVERTFLAGS_PARAMETER sur l'objet Command.

Méthodes

Pour plus d'informations sur les méthodes OLE DB qui prennent en charge les paramètres table, consultez Prise en charge des types de paramètre table OLE DB (méthodes).

Propriétés

Pour plus d'informations sur les propriétés OLE DB qui prennent en charge les paramètres table, consultez Prise en charge du type de paramètre table OLE DB (Propriétés).

Voir aussi

Concepts