Fonction JetBeginTransaction2
S’applique à : Windows | Windows Server
Fonction JetBeginTransaction2
La fonction JetBeginTransaction2 entraîne l’entrée d’une session dans une transaction et la création d’un point d’enregistrement. Cette fonction peut être appelée plusieurs fois dans une seule session pour créer des points d’enregistrement supplémentaires. Ces points d’enregistrement peuvent être utilisés de manière sélective pour conserver ou ignorer les modifications apportées à la base de données.
JET_ERR JET_API JetBeginTransaction2(
__in JET_SESID sesid,
__in JET_GRBIT grbit
);
Paramètres
sesid
Session à utiliser pour cet appel.
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_bitTransactionReadOnly |
La transaction ne modifie pas la base de données. Si une mise à jour est tentée, cette opération échoue avec JET_errTransReadOnly. Cette option est ignorée, sauf si elle est demandée lorsque la session donnée n’est pas déjà dans une transaction. Cette option est disponible uniquement à partir de Windows XP. |
Valeur renvoyée
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 Erreurs du moteur de stockage extensible et Paramètres de gestion des erreurs.
Code de retour |
Description |
---|---|
JET_errSuccess |
L’opération s’est terminée avec succès. |
JET_errClientRequestToStopJetService |
Il n’est pas possible d’effectuer l’opération, car toutes les activités sur le instance associée à la session ont cessé à la suite d’un appel à JetStopService. |
JET_errInstanceUnavailable |
Il n’est pas possible d’effectuer l’opération, car le instance associé à la session a rencontré une erreur irrécupérable qui nécessite que l’accès à toutes les données soit révoqué pour protéger l’intégrité de ces données. Cette erreur sera retournée uniquement par Windows XP et les versions ultérieures. |
JET_errNotInitialized |
Il n’est pas possible d’effectuer l’opération, car le instance associé à la session n’a pas encore été initialisé. |
JET_errRestoreInProgress |
Il n’est pas possible d’effectuer l’opération, car une opération de restauration est en cours sur le instance associé à la session. |
JET_errSessionSharingViolation |
La même session ne peut pas être utilisée pour plusieurs threads en même temps. Cette erreur sera retournée uniquement par Windows XP et les versions ultérieures. |
JET_errTermInProgress |
Il n’est pas possible d’effectuer l’opération, car le instance associé à la session est en cours d’arrêt. |
JET_errTransTooDeep |
Impossible de démarrer une nouvelle transaction, car la session est déjà à la profondeur maximale autorisée par le moteur de base de données. |
En cas de réussite, la session fournie se trouve à l’intérieur d’une transaction. Si la session se trouvait précédemment à l’intérieur d’une transaction, un nouveau point d’enregistrement est créé.
En cas d’échec, l’état transactionnel de la session reste inchangé. Aucune modification de l’état de la base de données ne se produira.
Notes
Pour plus d’informations sur le fonctionnement des transactions, consultez JetBeginTransaction.
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. |
Bibliothèque |
Utilisez ESENT.lib. |
DLL |
Nécessite ESENT.dll. |
Voir aussi
JET_ERR
JET_GRBIT
JET_SESID
JetBeginTransaction
JetCommitTransaction
JetGetSystemParameter
JetResetSessionContext
JetRollback
JetSetSessionContext
Paramètres système