Funzione JetGetTableColumnInfo

Si applica a: Windows | Windows Server

Funzione JetGetTableColumnInfo

La funzione JetGetTableColumnInfo recupera informazioni su una colonna di tabella.

JET_ERR JET_API JetGetTableColumnInfo(
  __in          JET_SESID sesid,
  __in          JET_TABLEID tableid,
  __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.

tableid

Tabella contenente la colonna per cui recuperare le informazioni.

szColumnName

Nome della colonna per cui recuperare 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

Dimensione, in byte, del buffer passato in pvResult.

InfoLevel

Tipo di informazioni che verranno recuperate per la colonna specificata da szColumnName. Il formato dei dati archiviati in pvResult dipende da InfoLevel. Per lo schema della tabella temporanea, vedere JET_COLUMNLIST.

  • JET_ColInfoListSortColumnid ordina la tabella temporanea in base a columnid.

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

Per questo parametro è possibile impostare le opzioni seguenti:

Valore

Significato

JET_ColInfo

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

JET_ColInfoBase

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

JET_ColInfoByColid

pvResult viene interpretato come un 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_ColInfo e JET_ColInfoByColid recuperano entrambe le stesse informazioni.

JET_ColInfoList

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

JET_ColInfoListCompact

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

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 l'uso di verrà restituito JET_errFeatureNotAvailable.

JET_ColInfoBaseByColId

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

Windows Vista: Questa funzionalità è disponibile in Windows Vista e versioni successive.

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

Ordinamento dell'elenco di colonne restituito in base all'id colonna . L'impostazione predefinita 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 sui possibili errori ESE, vedere Errori del motore di archiviazione estendibile 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 infoLevel non valido.

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 infoLevel non valido.

  • È stato passato un valore null szTableName .

  • Il buffer è troppo piccolo.

Commenti

JetGetTableColumnInfo e JetGetColumnInfo recuperano entrambe le 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 JetGetTableColumnInfoW (Unicode) e JetGetTableColumnInfoA (ANSI).

Vedere anche

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