Share via


Funzione JetGetColumnInfo

Si applica a: Windows | Windows Server

Funzione JetGetColumnInfo

La funzione JetGetColumnInfo recupera informazioni su una colonna.

    JET_ERR JET_API JetGetColumnInfo(
      __in          JET_SESID sesid,
      __in          JET_DBID dbid,
      __in          const tchar* szTableName,
      __in          const tchar* szColumnName,
      __out         void* pvResult,
      __in          unsigned long cbMax,
      __in          unsigned long InfoLevel
    );

Parametri

sesid

Contesto della sessione di database da usare per la chiamata API.

dbid

Identifica, insieme a szTableName, la tabella che contiene la colonna da cui vengono recuperate le informazioni.

szTableName

Identifica, insieme a dbid, la tabella che contiene la colonna da cui vengono recuperate le informazioni.

szColumnName

Nome della colonna per cui vengono recuperate le informazioni.

pvResult

Puntatore a un buffer che riceverà le informazioni. Il tipo del buffer dipende da InfoLevel. Il chiamante deve essere configurato per allineare il buffer in modo appropriato.

cbMax

Dimensioni, in byte, del buffer passato in pvResult.

InfoLevel

Tipo di informazioni da recuperare per la colonna specificata da szColumnName. Il formato dei dati archiviati in pvResult dipende da questo parametro. Per lo schema della tabella temporanea, vedere JET_COLUMNLIST.

Queste InfoLevels sono differenziate da:

  • JET_ColInfoListSortColumnid ordina la tabella temporanea per columnid.

  • JET_ColInfoListCompact compatta l'output. Per altre informazioni sull'output compatto, vedere JET_COLUMNLIST.

Le opzioni seguenti sono disponibili per l'uso con questo parametro.

Valore

Significato

JET_ColInfo

JET_ColInfo e JET_ColInfoByColid recuperare entrambe le stesse informazioni. pvResult viene interpretato come JET_COLUMNDEF e i campi della strutturaJET_COLUMNDEF vengono compilati in modo appropriato.

JET_ColInfoBase

pvResult viene interpretato come struttura JET_COLUMNBASE . È simile a una struttura JET_COLUMNDEF . Se questa funzione ha esito positivo, la struttura viene popolata con valori appropriati. Se questa funzione ha esito negativo, la struttura contiene dati non definiti.

JET_ColInfoByColid

Come JET_ColInfo, pvResult viene interpretato come JET_COLUMNDEF, ad eccezione di questo InfoLevel indica che la colonna richiesta (szColumName) non è il nome della colonna stringa, ma un puntatore a un JET_COLUMNID.

JET_ColInfoList

pvResult viene interpretato come struttura JET_COLUMNLIST . Se questa funzione ha esito positivo, la struttura viene popolata con valori appropriati. Viene aperta una tabella temporanea e viene identificata dal membro tableid della struttura JET_COLUMNLIST . La tabella deve essere chiusa con JetCloseTable. Se questa funzione ha esito negativo, la struttura contiene dati non definiti.

JET_ColInfoListCompact

Uguale a JET_ColInfoList.

JET_ColInfoListSortColumnid

Uguale a JET_ColInfoList; tuttavia la tabella risultante viene ordinata in base all'id colonna anziché al nome della colonna.

JET_ColInfoSysTabCursor

JET_ColInfoSysTabCursor è deprecato e verrà restituito JET_errFeatureNotAvailable.

JET_ColInfoBaseByColId

Come JET_ColInfoBase, pvResult viene interpretato come JET_COLUMNBASE, ad eccezione di infoLevel indica che la colonna richiesta (szColumName) non è il nome della colonna stringa, ma un puntatore a un JET_COLUMNID.

Windows Vista: Questo valore viene introdotto in Windows Vista.

JET_ColInfoGrbitNonDerivedColumnsOnly

Restituisce solo colonne non derivate (se la tabella è derivata da un modello).

Questo valore può essere logico o in InfoLevel, quando l'InfoLevel di base è JET_ColInfoList.

Windows Vista: Questo valore viene introdotto in Windows Vista.

JET_ColInfoGrbitMinimalInfo

Restituisce solo il nome della colonna e l'id colonna di ogni colonna.

Questo valore può essere logico o in InfoLevel, quando l'InfoLevel di base è JET_ColInfoList.

Windows Vista: Questo valore viene introdotto in Windows Vista.

JET_ColInfoGrbitSortByColumnid

Ordinare l'elenco di colonne restituite in base all'oggetto columnid (il valore predefinito consiste nell'ordinare l'elenco in base al nome della colonna).

Questo valore può essere logico o in InfoLevel, quando l'InfoLevel di base è JET_ColInfoList.

Windows Vista: Questo valore viene introdotto in Windows Vista.

Valore restituito

Questa funzione restituisce il tipo di dati JET_ERR con uno dei codici restituiti seguenti. Per altre informazioni sugli errori ESE possibili, vedere Errori del motore di archiviazione estendibili e parametri di gestione degli errori.

Codice restituito

Descrizione

JET_errSuccess

Operazione riuscita.

JET_errColumnNotFound

La colonna denominata szColumnName non è stata trovata nella tabella.

JET_errFeatureNotAvailable

È stato specificato un valore non valido di InfoLevel .

JET_errInvalidName

Questo errore può essere restituito se:

  • È stato assegnato un nome non valido per szTableName .

  • È stato assegnato un nome non valido per szColumnName .

JET_errInvalidParameter

Questo errore può essere restituito se:

  • È stato specificato un valore non valido di InfoLevel .

  • È stato passato un valore null szTableName .

  • Il buffer è troppo piccolo.

Commenti

JetGetTableColumnInfo e JetGetColumnInfo recuperano informazioni su una colonna. La differenza tra di esse è la modalità di identificazione della tabella:

  • JetGetTableColumnInfo identifica una tabella in base a tableid.

  • JetGetColumnInfo identifica una tabella in base alla combinazione dbid e szTableName .

Quando si recuperano dati con JET_ColInfoList, JET_ColInfoListSortColumnid o JET_ColInfoListCompact, verrà aperta una tabella temporanea. La tabella temporanea contiene dati e la struttura JET_COLUMNLIST contiene informazioni sufficienti per attraversare la tabella temporanea. La tabella temporanea deve essere chiusa con JetCloseTable.

Requisiti

Requisito Valore

Client

Richiede Windows Vista, Windows XP o Windows 2000 Professional.

Server

Richiede Windows Server 2008, Windows Server 2003 o Windows 2000 Server.

Intestazione

Dichiarato in Esent.h.

Libreria

Usare ESENT.lib.

DLL

Richiede ESENT.dll.

Unicode

Implementato come JetGetColumnInfoW (Unicode) e JetGetColumnInfoA (ANSI).

Vedere anche

Parametri di gestione degli errori
Errori del motore di archiviazione estendibili
JET_COLUMNBASE
JET_COLUMNDEF
JET_COLUMNID
JET_COLUMNLIST
JET_ERR
JET_GRBIT
JET_SESID
JET_TABLEID
JetCloseTable
JetGetTableColumnInfo