Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
s’applique à : Windows | Windows Server
Fonction JetSetColumns
La fonction JetSetColumns est similaire au comportement de JetSetColumn , mais permet à une application de définir plusieurs valeurs de colonne dans une seule opération. Un tableau de structures JET_SETCOLUMN est utilisé pour décrire l’ensemble de valeurs de colonne à définir et pour décrire les mémoires tampons d’entrée pour chaque valeur de colonne à définir.
JET_ERR JET_API JetSetColumns(
__in JET_SESID sesid,
__in JET_TABLEID tableid,
__in_out_opt JET_SETCOLUMN* psetcolumn,
__in unsigned long csetcolumn
);
Paramètres
sesid
Session à utiliser pour cet appel.
tableid
Curseur à utiliser pour cet appel.
psetcolumn
Pointeur vers un tableau d’une ou plusieurs structures JET_SETCOLUMN . Chaque structure comprend des descriptions de la valeur de colonne à définir et à partir de laquelle obtenir des données de colonne à définir.
csetcolumn
Nombre de structures JET_SETCOLUMN dans le tableau donné par psetcolumn.
Valeur de retour
Cette fonction retourne le type de données JET_ERR avec l’un des codes de retour suivants. Pour plus d’informations sur les erreurs ESE possibles, consultez Les erreurs du moteur de stockage extensible et les paramètres de gestion des erreurs.
Code de retour |
Descriptif |
|---|---|
JET_errBadColumnId |
L’ID de colonne donné est en dehors des limites légales d’un ID de colonne. |
JET_errClientRequestToStopJetService |
Il n’est pas possible d’effectuer l’opération, car toutes les activités associées à la session ont cessé suite à un appel à JetStopService. |
JET_errColumnIllegalNull |
Identique à JET_errNullInvalid. |
JET_errColumnNotFound |
La colonne décrite par le columnid donné n’existe pas dans la table. |
JET_errColumnNotUpdatable |
Une tentative illégale a été effectuée pour mettre à jour une valeur longue pendant une opération de suppression de copie d’origine d’insertion. |
JET_errColumnTooBig |
Les données de valeur de colonne données dans la mémoire tampon d’entrée dépassent la limite de taille naturelle pour une colonne de longueur fixe ou configurées pour le texte de longueur fixe ou les colonnes binaires. Cette erreur est également retournée lors de la transmission de plus de 1024 octets de données pour une colonne longue et la définition de l’indicateur de JET_bitSetIntrinsicLV. |
JET_errInstanceUnavailable |
Il n’est pas possible d’effectuer l’opération, car l’instance associée à la session a rencontré une erreur irrécupérable qui exige que l’accès à toutes les données soit révoqué pour protéger l’intégrité de ces données. Cette erreur ne sera retournée que par Windows XP et versions ultérieures. |
JET_errInvalidBufferSize |
La taille de données de valeur de colonne donnée ne correspond pas à ce qui est naturel pour le type de données de longueur fixe. |
JET_errInvalidColumnType |
Une tentative illégale a été effectuée pour mettre à jour une colonne incrémentée automatiquement pendant une opération d’insertion ou de mise à jour, ou pour mettre à jour une colonne de version pendant une opération de remplacement. |
JET_errInvalidgrbit |
Les options fournies sont inconnues ou une combinaison illégale de paramètres de bits connus. |
JET_errInvalidParameter |
Le psetinfo-cbStruct> donné n’est pas une taille valide pour la structure JET_SETINFO . |
JET_errMultiValuedDuplicate |
L’opération de colonne set a tenté de créer une valeur en double et spécifiée JET_bitSetUniqueMultiValues ou JET_bitSetUniqueNormalizedMultiValues. |
JET_errNotInitialized |
Il n’est pas possible d’effectuer l’opération, car l’instance associée à la session n’a pas encore été initialisée. |
JET_errNotInTransaction |
Une tentative illégale a été effectuée pour mettre à jour une valeur de colonne longue lorsque la session appelante n’était pas dans une transaction. |
JET_errNullInvalid |
Une tentative illégale a été effectuée pour définir une colonne non NULL sur NULL. |
JET_errRecordTooBig |
La valeur de colonne n’a pas pu être définie sur la valeur dans la mémoire tampon d’entrée, car elle aurait provoqué le dépassement de la taille liée à la taille de l’enregistrement. Les colonnes de type JET_coltypLongText ou JET_coltypLongBinary peuvent être stockées séparément des données d’enregistrement restantes. Toutefois, d’autres colonnes doivent être stockées avec l’enregistrement et peuvent entraîner le dépassement de la limite de taille de l’enregistrement. Même les colonnes longues nécessitent 5 octets d’espace dans l’enregistrement en tant que liaison et cela peut également entraîner JET_errRecordTooBig être retourné. |
JET_errRestoreInProgress |
Il n’est pas possible d’effectuer l’opération, car une opération de restauration est en cours sur l’instance associée à la session. |
JET_errSessionSharingViolation |
La même session ne peut pas être utilisée pour plusieurs threads en même temps. Cette erreur ne sera retournée que par Windows XP et versions ultérieures. |
JET_errTermInProgress |
Il n’est pas possible d’effectuer l’opération, car l’instance associée à la session est arrêtée. |
JET_errUpdateNotPrepared |
Le curseur n’est pas en cours d’insertion d’un nouvel enregistrement ou de mise à jour d’un enregistrement existant. |
JET_wrnColumnMaxTruncated |
La valeur de colonne dans la mémoire tampon d’entrée a dépassé la longueur maximale configurée pour une colonne de longueur variable et a été tronquée. |
En cas de réussite, pour chaque colonne décrite dans les psetcolumns, la partie souhaitée de la valeur de colonne est définie avec les données copiées à partir de la mémoire tampon d’entrée. Le jeu de données de colonne a peut-être été tronqué s’il a dépassé la longueur maximale spécifiée pour une colonne de longueur variable.
En cas d’échec, l’emplacement du curseur reste inchangé et aucune donnée de valeur de colonne n’est mise à jour dans la mémoire tampon de copie.
Remarques
Si une opération de colonne définie individuelle retourne une erreur, l’opération JetSetColumns entière retourne une erreur. Les avertissements, en général, sont retournés dans l’erreur psetcolumns et> non dans le code de retour de cette fonction. Toutefois, si le dernier jeu de colonnes a un avertissement, cet avertissement est retourné par JetSetColumns lui-même.
Spécifications
| Besoin | 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. |
Bibliothèque |
Utilisez ESENT.lib. |
DLL |
Nécessite ESENT.dll. |
Voir aussi
JET_COLTYP
JET_ERR
JET_SESID
JET_TABLEID
JET_SETCOLUMN
JetRetrieveColumns
JetSetColumn