Partager via


Fonction JetGetCursorInfo

S’applique à : Windows | Windows Server

Fonction JetGetCursorInfo

La fonction JetGetCursorInfo permet de déterminer si une mise à jour de l’enregistrement actif d’un curseur entraîne un conflit d’écriture, en fonction de la status de mise à jour actuelle de l’enregistrement. Il est possible qu’un conflit d’écriture soit retourné, même si JetGetCursorInfo retourne JET_errSuccess, car une autre session peut mettre à jour l’enregistrement avant que la session en cours ne puisse mettre à jour le même enregistrement.

    JET_ERR JET_API JetGetCursorInfo(
      __in          JET_SESID sesid,
      __in          JET_TABLEID tableid,
      __out         void* pvResult,
      __in          unsigned long cbMax,
      __in          unsigned long InfoLevel
    );

Paramètres

sesid

Session qui sera utilisée pour cet appel.

tableid

Curseur qui sera utilisé pour cet appel.

pvResult

Réservé pour un usage futur.

cbMax

Doit être défini sur 0 (zéro), sinon inutilisé. Il est présent pour les fonctionnalités futures.

InfoLevel

Doit être défini sur 0 (zéro), sinon inutilisé. Il est présent pour les fonctionnalités futures.

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ées à 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 exige 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_errInvalidParameter

CbMax n’est pas 0 (zéro) ou InfoLevel n’est pas 0 (zéro).

JET_errNoCurrentRecord

Le curseur ne se trouve actuellement pas sur un enregistrement et les informations d’un enregistrement logique ne peuvent pas être retournées en conséquence.

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_errWriteConflict

L’enregistrement actuel du curseur a été mis à jour par une autre session et une mise à jour de cet enregistrement par cette session entraîne un conflit d’écriture.

En cas de réussite, cette opération n’a aucun effet sur l’emplacement du curseur, mais indique uniquement qu’aucune autre session n’a actuellement mis à jour cet enregistrement.

En cas d’échec, si un code d’erreur négatif est retourné, il n’y a aucun effet sur le curseur ou la base de données.

Notes

Cette opération n’affecte pas l’état du curseur ou des données. Il retourne uniquement un code d’erreur indiquant si une mise à jour de l’enregistrement actif par la session appelante est connue pour aboutir à un JET_errWriteConflict ou si elle n’est pas connue pour retourner JET_errWriteConflict. Si une autre session a déjà mis à jour cet enregistrement pour l’utiliser, il est certain qu’une mise à jour de cet enregistrement par cette session entraînera un conflit d’écriture. Cela sera vrai jusqu’à ce que cette session valide ou restaure ses transactions au niveau de transaction 0 (zéro). Toutefois, si JetGetCursorInfo retourne JET_errSuccess, il est toujours possible pour une autre session de mettre à jour cet enregistrement avant la session en cours et il est donc toujours possible qu’une mise à jour de l’enregistrement actif par cette session dans sa transaction actuelle entraîne un conflit d’écriture.

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_SESID
JET_TABLEID
JetGetLock
JetPrepareUpdate
JetStopService
JetUpdate