Share via


Méthode Api.JetEnumerateColumns

Récupère efficacement un ensemble de colonnes et leurs valeurs à partir de l’enregistrement actif d’un curseur ou de la mémoire tampon de copie de ce curseur. Les colonnes et les valeurs récupérées peuvent être limitées par une liste d’ID de colonne, de nombres itagSequence et d’autres caractéristiques. Cette API de récupération de colonne est unique en ce qu’elle retourne des informations dans la mémoire allouée dynamiquement obtenue à l’aide d’un rappel compatible realloc fourni par l’utilisateur. Cette nouvelle flexibilité permet une récupération efficace des données de colonne avec des caractéristiques spécifiques (telles que la taille et la multiplicité) inconnues de l’appelant. Cela élimine la nécessité d’utiliser les modes de découverte de JetRetrieveColumn pour déterminer ces caractéristiques afin de configurer un appel final à JetRetrieveColumn qui récupérera correctement les données souhaitées.

Cette API n’est pas conforme CLS. 

Namespace:Microsoft.Isam.Esent.Interop
Assemblée: Microsoft.Isam.Esent.Interop (en Microsoft.Isam.Esent.Interop.dll)

Syntaxe

'Declaration
<CLSCompliantAttribute(False)> _
Public Shared Function JetEnumerateColumns ( _
    sesid As JET_SESID, _
    tableid As JET_TABLEID, _
    numColumnids As Integer, _
    columnids As JET_ENUMCOLUMNID(), _
    <OutAttribute> ByRef numColumnValues As Integer, _
    <OutAttribute> ByRef columnValues As JET_ENUMCOLUMN(), _
    allocator As JET_PFNREALLOC, _
    allocatorContext As IntPtr, _
    maxDataSize As Integer, _
    grbit As EnumerateColumnsGrbit _
) As JET_wrn
'Usage
Dim sesid As JET_SESID
Dim tableid As JET_TABLEID
Dim numColumnids As Integer
Dim columnids As JET_ENUMCOLUMNID()
Dim numColumnValues As Integer
Dim columnValues As JET_ENUMCOLUMN()
Dim allocator As JET_PFNREALLOC
Dim allocatorContext As IntPtr
Dim maxDataSize As Integer
Dim grbit As EnumerateColumnsGrbit
Dim returnValue As JET_wrn

returnValue = Api.JetEnumerateColumns(sesid, _
    tableid, numColumnids, columnids, _
    numColumnValues, columnValues, allocator, _
    allocatorContext, maxDataSize, grbit)
[CLSCompliantAttribute(false)]
public static JET_wrn JetEnumerateColumns(
    JET_SESID sesid,
    JET_TABLEID tableid,
    int numColumnids,
    JET_ENUMCOLUMNID[] columnids,
    out int numColumnValues,
    out JET_ENUMCOLUMN[] columnValues,
    JET_PFNREALLOC allocator,
    IntPtr allocatorContext,
    int maxDataSize,
    EnumerateColumnsGrbit grbit
)

Paramètres

  • numColumnids
    Type : System.Int32

    Nombre de JET_ENUMCOLUMNIDS.

  • columnids
    Type : []

    Tableau facultatif d’ID de colonne, chacun avec un tableau facultatif de nombres itagSequence à énumérer.

  • numColumnValues
    Type : System.Int32

    Retourne le nombre de valeurs de colonne récupérées.

  • columnValues
    Type : []

    Retourne les valeurs de colonne énumérées.

  • allocatorContext
    Type : System.IntPtr

    Contexte du rappel d’allocation.

  • maxDataSize
    Type : System.Int32

    Définit une limite sur la quantité de données à retourner à partir d’un texte long ou d’une colonne binaire longue. Ce paramètre peut être utilisé pour empêcher l’énumération d’une valeur de colonne extrêmement grande.

Valeur retournée

Type : Microsoft.Isam.Esent.Interop.JET_wrn
Un avertissement ou un succès.

Voir aussi

Informations de référence

Classe API

Membres de l’API

Espace de noms Microsoft.Isam.Esent.Interop