JET_SETCOLUMN Structure
S’applique à : Windows | Windows Server
JET_SETCOLUMN Structure
La structure JET_SETCOLUMN contient des paramètres d’entrée et de sortie pour JetSetColumns. Les champs de la structure décrivent la valeur de colonne à définir, comment la définir et où obtenir les données du jeu de colonnes.
typedef struct {
JET_COLUMNID columnid;
const void* pvData;
unsigned long cbData;
JET_GRBIT grbit;
unsigned long ibLongValue;
unsigned long itagSequence;
JET_ERR err;
} JET_SETCOLUMN;
Membres
Columnid
Identificateur de colonne pour une colonne à définir.
pvData
Pointeur vers les données à définir dans une colonne.
cbData
Taille de l’allocation, en octets, à partir de pvData en octets.
grbit
Groupe de bits qui contiennent les options à utiliser pour cet appel, qui incluent zéro ou plusieurs des éléments suivants.
Valeur |
Signification |
---|---|
JET_bitSetAppendLV |
Ajoute des données à une colonne de type JET_coltypLongText ou JET_coltypLongBinary. Le même comportement peut être obtenu en déterminant la taille de la valeur longue existante et en spécifiant ibLongValue dans psetinfo. Toutefois, il est plus simple d’utiliser ce grbit, car il n’est pas nécessaire de connaître la taille de la valeur de colonne existante. |
JET_bitSetOverwriteLV |
Remplace la valeur longue existante par les nouvelles données. Lorsque cette option est utilisée, c’est comme si la valeur longue existante avait été définie sur 0 (zéro) longueur avant de définir les nouvelles données. |
JET_bitSetSizeLV |
Interprète la mémoire tampon d’entrée comme un nombre entier d’octets à définir comme longueur de la valeur longue décrite par le columnid donné et, le cas échéant, le numéro de séquence dans psetinfo-itagSequence>. Si la taille indiquée est supérieure à la valeur de colonne existante, la colonne est étendue avec 0s. Si la taille est inférieure à la valeur de colonne existante, la valeur est tronquée. |
JET_bitSetZeroLength |
Définit une valeur sur une longueur nulle. Normalement, une valeur de colonne est définie sur NULL en passant un cbMax de 0. Toutefois, pour certains types, comme JET_coltypText, une valeur de colonne peut être de 0 longueur au lieu de NULL, et cette option est utilisée pour faire la différence entre la longueur NULL et la longueur 0. |
JET_bitSetSeparateLV |
Force le stockage d’une valeur longue, colonnes de type JET_coltypLongText ou JET_coltypLongBinary, séparément du reste des données d’enregistrement. Cela se produit normalement lorsque la taille de la valeur longue l’empêche d’être stockée avec les données d’enregistrement restantes. Toutefois, cette option peut être utilisée pour forcer le stockage séparé de la valeur longue. Notez que les valeurs longues de quatre octets ou plus petites ne peuvent pas être forcées d’être séparées. Dans ce cas, l’option est ignorée. |
JET_bitSetUniqueMultiValues |
Applique des valeurs distinctes dans une colonne à valeurs multiples. Cette option compare les données de colonne source, sans transformations, à d’autres valeurs de colonne existantes et une erreur est retournée si un doublon est trouvé. Si cette option est donnée, JET_bitSetAppendLv, JET_bitSetOverwriteLV et JET_bitSetSizeLV ne peuvent pas également être donnés. |
JET_bitSetUniqueNormalizedMultiValues |
Applique des valeurs distinctes dans une colonne à valeurs multiples. Cette option compare la transformation normalisée par clé des données de colonne à d’autres valeurs de colonne existantes transformées de la même façon, et une erreur est retournée si un doublon est trouvé. Si cette option est donnée, JET_bitSetAppendLv, JET_bitSetOverwriteLV et JET_bitSetSizeLV ne peuvent pas également être donnés. |
JET_bitSetRevertToDefaultValue |
Entraîne le renvoi de la valeur de colonne par défaut à la colonne lors des opérations de récupération de colonne suivantes. Toutes les valeurs de colonne existantes sont supprimées. Cette option s’applique uniquement aux colonnes balisées, éparses ou à valeurs multiples. |
JET_bitSetIntrinsicLV |
Conserve la valeur longue, colonnes de type JET_coltypLongText ou JET_coltypeLongBinary, stockées avec les données d’enregistrement restantes si possible. Normalement, les colonnes longues sont stockées séparément lorsque leur longueur dépasse 1 024 octets ou que la longueur de l’enregistrement dépasse sa limite de taille de page. Toutefois, si cette option est définie, l’opération set column échoue avec une erreur JET_errColumnTooBig plutôt que de stocker cette valeur de colonne séparément des données d’enregistrement restantes. |
ibLongValue
Décalage vers le premier octet à récupérer à partir d’une colonne de type JET_coltypLongBinary ou JET_coltypLongText.
itagSequence
Décrit le numéro séquentiel de la valeur dans une colonne à valeurs multiples. Une itagSequence de 0 indique que le jeu de valeurs de colonne doit être ajouté en tant que nouvelle instance d’une colonne à valeurs multiples.
err
Codes d’erreur et avertissements retournés par l’opération set column.
Spécifications
Condition requise | Valeur |
---|---|
Client |
Nécessite Windows Vista, Windows XP ou Windows 2000 Professionnel. |
Serveur |
Nécessite Windows Server 2008, Windows Server 2003 ou Windows 2000 Server. |
En-tête |
Déclaré dans Esent.h. |