Utilisation de colonnes dans une table
S’applique à : Windows | Windows Serveurs
Utilisation de colonnes dans une table
Une table peut être créée avec un ensemble initial de colonnes en appelant JetCreateTableColumnIndex ou sans colonnes en appelant JetCreateTable. Lorsque la table est créée avec un ensemble initial de colonnes dans l’appel à JetCreateTableColumnIndex ou JetCreateTableColumnIndex2, elle contient une structure JET_TABLECREATE (ou JET_TABLECREATE2). Ces structures contiennent un tableau de JET_COLUMNCREATE structures qui définissent l’ensemble des colonnes de la table. Le membre Grbit définit les options sur la colonne et le membre coltyp définit le type de données qui peut être défini dans la colonne.
Lorsque la table est créée sans colonnes, vous devez l’ajouter en appelant JetAddColumn avec la structure JET_COLUMNDEF . Le membre Grbit de la structure JET_COLUMNDEF définit les options sur la colonne et le membre coltyp définit le type de données qui peut être défini dans la colonne. Les valeurs de colonne par défaut sont définies dans l’appel à JetAddColumn en spécifiant une valeur dans le paramètre pvDefault et la taille dans le paramètre cbDefault . Une colonne sans valeur par défaut a effectivement une valeur par défaut NULL.
Les valeurs de la table peuvent uniquement être définies dans le contexte d’une transaction. La transaction commence dans l’appel à JetBeginTransaction et se termine dans l’appel à JetCommitTransaction. Au sein de la transaction, une seule valeur de colonne peut être définie en appelant JetSetColumn, ou plusieurs valeurs de colonnes peuvent être définies en appelant JetSetColumns. JetSetColumns utilise un tableau de structures JET_SETCOLUMN pour définir plusieurs colonnes dans la table. Les données sont contenues dans le paramètre pvData de JetSetColumn, ou le membre pvData dans JET_SETCOLUMN structure.
Les structures JET_COLUMNBASE, JET_COLUMNLISTet JET_COLUMNDEF sont retournées dans les appels à JetGetTableColumnInfoet JetGetColumnInfo selon le type de colonne récupéré. La structure JET_COLUMNBASE décrit les paramètres de la colonne de base, et la JET_COLUMNLIST contient les informations nécessaires pour parcourir la table temporaire créée par les fonctions JetGetColumnInfo et JetGetTableColumnInfo .