Condividi tramite


Metodo Api.JetEnumerateColumns

Recupera in modo efficiente un set di colonne e i relativi valori dal record corrente di un cursore o dal buffer di copia di tale cursore. Le colonne e i valori recuperati possono essere limitati da un elenco di ID di colonna, numeri itagSequence e altre caratteristiche. Questa API di recupero colonne è univoca in quanto restituisce informazioni nella memoria allocata dinamicamente ottenuta usando un callback compatibile con realloc fornito dall'utente. Questa nuova flessibilità consente il recupero efficiente dei dati di colonna con caratteristiche specifiche (ad esempio dimensioni e molteplicità) sconosciute al chiamante. In questo modo si elimina la necessità di usare le modalità di individuazione di JetRetrieveColumn per determinare tali caratteristiche per configurare una chiamata finale a JetRetrieveColumn che recupererà correttamente i dati desiderati.

Questa API non è conforme a CLS. 

Spazio dei nomi:Microsoft.Isam.Esent.Interop
Assemblea: Microsoft.Isam.Esent.Interop (in Microsoft.Isam.Esent.Interop.dll)

Sintassi

'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
)

Parametri

  • numColumnids
    Tipo: System.Int32

    Numero di JET_ENUMCOLUMNIDS.

  • columnids
    Tipo: []

    Matrice facoltativa di ID colonna, ognuno con una matrice facoltativa di numeri itagSequence da enumerare.

  • numColumnValues
    Tipo: System.Int32

    Restituisce il numero di valori di colonna recuperati.

  • columnValues
    Tipo: []

    Restituisce i valori delle colonne enumerate.

  • allocatorContext
    Tipo: System.IntPtr

    Contesto per il callback di allocazione.

  • maxDataSize
    Tipo: System.Int32

    Imposta un limite sulla quantità di dati da restituire da una colonna di tipo long text o long binary. Questo parametro può essere usato per impedire l'enumerazione di un valore di colonna estremamente grande.

Valore restituito

Tipo: Microsoft.Isam.Esent.Interop.JET_wrn
Avviso o esito positivo.

Vedi anche

Riferimento

Classe Api

Membri dell'API

Spazio dei nomi Microsoft.Isam.Esent.Interop