JET_CBTYP

S’applique à : Windows | Windows Server

JET_CBTYP

Le JET_CBTYP groupe de constantes décrit tous les points possibles d’une opération que le moteur de base de données notifie à une application en appelant la fonction de rappel JET_CALLBACK . Le moteur de base de données transmet l’une de ces constantes dans le paramètre cbtyp de la fonction de rappel. La signification des autres paramètres passés par le moteur de base de données dans cet appel dépend de la JET_CBTYP spécifique passée.

Windows XP : Le JET_CBTYP groupe de constantes est introduit dans Windows XP.

Constante/valeur

Description

JET_cbtypNull
0x00000000

Ce rappel est réservé et toujours considéré comme non valide.

JET_cbtypFinalize
0x00000001

Ce rappel est réservé pour une utilisation ultérieure.

JET_cbtypBeforeInsert
0x00000002

Ce rappel se produit juste avant l’insertion d’un nouvel enregistrement dans une table par un appel à JetUpdate.

Le pointeur de fonction pour cette raison de rappel est passé à JetCreateTableColumnIndex au moyen de JET_TABLECREATE ou est configuré au moment de l’exécution au moyen de JetRegisterCallback. Pour plus d’informations, consultez JET_TABLECREATE ou JetRegisterCallback.

Les paramètres de rappel auront les valeurs suivantes :

  • sesid : session contenant l’enregistrement à insérer.

  • dbid : ID de base de données de la table qui contient l’enregistrement à insérer.

  • tableid : curseur qui a préparé le nouvel enregistrement à insérer. Il est important de noter que la valeur d’une version ou d’une colonne d’incrémentation automatique peut ne pas être correcte pour l’instant.

  • pvArg1 : NULL

  • pvArg2 : NULL

  • pvContext : pointeur de contexte passé à JetRegisterCallback ou NULL.

  • ulUnused : NULL Si une erreur est retournée par le rappel, l’opération à l’origine du rappel échoue avec cette erreur.

JET_cbtypAfterInsert
0x00000004

Ce rappel se produit juste après qu’un nouvel enregistrement a été inséré dans une table par un appel à JetUpdate , mais avant que JetUpdate ne revienne à son appelant.

Le pointeur de fonction pour cette raison de rappel est passé à JetCreateTableColumnIndex au moyen de JET_TABLECREATE ou est configuré au moment de l’exécution au moyen de JetRegisterCallback. Pour plus d’informations, consultez JET_TABLECREATE ou JetRegisterCallback.

Les paramètres de rappel auront les valeurs suivantes :

  • sesid : session contenant l’enregistrement qui vient d’être inséré.

  • dbid : ID de base de données de la table qui contient l’enregistrement qui vient d’être inséré.

  • tableid : curseur sur la table dans laquelle l’enregistrement vient d’être inséré. Notez que le curseur est toujours positionné sur la même entrée d’index que dans le rappel avant insertion. Notez également que cette entrée d’index peut ne pas être liée de quelque manière que ce soit à l’enregistrement inséré.

  • pvArg1 : NULL

  • pvArg2 : NULL

  • pvContext : pointeur de contexte passé à JetRegisterCallback ou NULL.

  • ulUnused : NULL Si une erreur est retournée par le rappel, elle est ignorée.

JET_cbtypBeforeReplace
0x00000008

Ce rappel se produit juste avant qu’un enregistrement existant dans une table ne soit modifié par un appel à JetUpdate.

Le pointeur de fonction pour cette raison de rappel est passé à JetCreateTableColumnIndex au moyen de JET_TABLECREATE ou est configuré au moment de l’exécution au moyen de JetRegisterCallback. Pour plus d’informations, consultez JET_TABLECREATE ou JetRegisterCallback.

Les paramètres de rappel auront les valeurs suivantes :

  • sesid : session dont l’enregistrement doit être modifié.

  • dbid : ID de base de données de la table qui contient l’enregistrement à modifier.

  • tableid : curseur positionné sur une entrée d’index associée à l’enregistrement à modifier. Il est important de noter que la valeur d’une version ou d’une colonne d’incrémentation automatique peut ne pas être correcte pour l’instant.

  • pvArg1 : NULL

  • pvArg2 : NULL

  • pvContext : pointeur de contexte passé à JetRegisterCallback ou NULL.

  • ulUnused : NULL Si une erreur est retournée par le rappel, l’opération à l’origine du rappel échoue avec cette erreur.

JET_cbtypAfterReplace
0x00000010

Ce rappel se produit juste après qu’un enregistrement existant dans une table a été modifié par un appel à JetUpdate , mais avant le retour de JetUpdate à son appelant.

Le pointeur de fonction pour cette raison de rappel est passé à JetCreateTableColumnIndex au moyen de JET_TABLECREATE ou est configuré au moment de l’exécution au moyen de JetRegisterCallback. Pour plus d’informations, consultez JET_TABLECREATE ou JetRegisterCallback.

Les paramètres de rappel auront les valeurs suivantes :

  • sesid : session dont l’enregistrement vient d’être modifié.

  • dbid : ID de base de données de la table qui contient l’enregistrement qui vient d’être modifié.

  • tableid : curseur positionné sur une entrée d’index associée à l’enregistrement qui vient d’être modifié.

  • pvArg1 : NULL

  • pvArg2 : NULL

  • pvContext : pointeur de contexte passé à JetRegisterCallback ou NULL.

  • ulUnused : NULL Si une erreur est retournée par le rappel, elle est ignorée.

JET_cbtypBeforeDelete
0x00000020

Ce rappel se produit juste avant la suppression d’un enregistrement existant dans une table par un appel à JetDelete.

Le pointeur de fonction pour cette raison de rappel est passé à JetCreateTableColumnIndex au moyen de JET_TABLECREATE ou est configuré au moment de l’exécution au moyen de JetRegisterCallback. Pour plus d’informations, consultez JET_TABLECREATE ou JetRegisterCallback.

Les paramètres de rappel auront les valeurs suivantes :

  • sesid : session qui a l’enregistrement à supprimer.

  • dbid : ID de base de données de la table qui contient l’enregistrement à supprimer.

  • tableid : curseur positionné sur une entrée d’index associée à l’enregistrement à supprimer.

  • pvArg1 : NULL

  • pvArg2 : NULL

  • pvContext : pointeur de contexte passé à JetRegisterCallback ou NULL.

  • ulUnused : NULL Si une erreur est retournée par le rappel, l’opération à l’origine du rappel échoue avec cette erreur.

JET_cbtypAfterDelete
0x00000040

Ce rappel se produit juste après la suppression d’un enregistrement existant dans une table par un appel à JetDelete , mais avant que JetDelete ne revienne à son appelant.

Le pointeur de fonction pour cette raison de rappel est passé à JetCreateTableColumnIndex au moyen de JET_TABLECREATE ou est configuré au moment de l’exécution au moyen de JetRegisterCallback. Pour plus d’informations, consultez JET_TABLECREATE ou JetRegisterCallback.

Les paramètres de rappel auront les valeurs suivantes :

  • sesid : session contenant l’enregistrement qui vient d’être supprimé.

  • dbid : ID de base de données de la table qui contient l’enregistrement qui vient d’être supprimé.

  • tableid : curseur positionné sur une entrée d’index associée à l’enregistrement qui vient d’être supprimé.

  • pvArg1 : NULL

  • pvArg2 : NULL

  • pvContext : pointeur de contexte passé à JetRegisterCallback ou NULL.

  • ulUnused : NULL

Si une erreur est retournée par le rappel, elle est ignorée.

JET_cbtypUserDefinedDefaultValue
0x00000080

Ce rappel se produit lorsque le moteur doit récupérer la valeur par défaut définie par l’utilisateur d’une colonne à partir de l’application. Ce rappel est essentiellement une implémentation limitée de JetRetrieveColumn qui est évaluée par l’application. Une valeur maximale d’une colonne peut être retournée pour une valeur par défaut définie par l’utilisateur.

Le pointeur de fonction pour cette raison de rappel est transmis à JetAddColumn au moyen d’une structure JET_USERDEFINEDDEFAULT ou transmis à JetCreateTableColumnIndex au moyen d’une structure JET_USERDEFINEDDEFAULT dans une structure JET_COLUMNCREATE dans une structure JET_TABLECREATE .

Les paramètres de rappel auront les valeurs suivantes :

  • sesid : session qui calcule la valeur par défaut définie par l’utilisateur

  • dbid : ID de base de données de la table qui contient la valeur par défaut définie par l’utilisateur

  • tableid : curseur positionné sur l’enregistrement pour lequel la valeur par défaut définie par l’utilisateur est récupérée

  • pvArg1 : mémoire tampon de sortie pour la valeur par défaut définie par l’utilisateur

  • pvArg2 : en entrée, il s’agit de la taille de la mémoire tampon de sortie. En sortie, il s’agit de la taille réelle de la valeur par défaut définie par l’utilisateur. dans les deux cas, la taille est un entier non signé 32 bits.

  • pvContext : pointeur vers une mémoire tampon contenant les données utilisateur spécifiées dans la structure JET_USERDEFINEDDEFAULT lors de la création de la colonne ou NULL si aucun contexte n’a été fourni.

  • ulUnused : ID de colonne de la colonne pour laquelle la valeur par défaut définie par l’utilisateur est récupérée.

Si une erreur est retournée par le rappel, l’opération à l’origine du rappel échoue avec cette erreur.

Si JET_wrnBufferTruncated est retourné par le rappel, l’opération se poursuit, mais la valeur entière n’est pas récupérée pendant le rappel.

Si JET_wrnColumnNull est retourné par le rappel, l’opération se poursuit, mais la valeur par défaut définie par l’utilisateur pour la colonne est NULL.

JET_cbtypOnlineDefragCompleted
0x00000100

Ce rappel se produit lorsque la défragmentation en ligne d’une base de données lancée par JetDefragment s’est arrêtée en raison du processus en cours d’exécution ou de la limite de temps atteinte.

Le pointeur de fonction pour cette raison de rappel est passé à JetDefragment. Pour plus d’informations, consultez JetDefragment.

Les paramètres de rappel auront les valeurs suivantes :

  • sesid : session utilisée pour effectuer la défragmentation en ligne de la base de données ou JET_sesidNil pour un fichier de diffusion en continu.

  • dbid : ID de base de données de la base de données défragmentée ou JET_dbidNil pour un fichier de diffusion en continu.

  • tableid : JET_tableidNil

  • pvArg1 : NULL

  • pvArg2 : NULL

  • pvContext : NULL

  • ulUnused : NULL

Si une erreur est retournée par le rappel, elle est ignorée.

JET_cbtypFreeCursorLS
0x00000200

Ce rappel se produit lorsque l’application doit propre le handle de contexte pour le stockage local associé à un curseur qui est libéré par le moteur de base de données. Pour plus d’informations, consultez JetSetLS.

Le pointeur de fonction pour cette raison de rappel est configuré au moyen de JetSetSystemParameter avec JET_paramRuntimeCallback.

Les paramètres de rappel auront les valeurs suivantes :

  • sesid : JET_sesidNil

  • dbid : JET_dbidNil

  • tableid : JET_tableidNil

  • pvArg1 : handle de contexte défini à l’aide de JetSetLS

  • pvArg2 : NULL

  • pvContext : NULL

  • ulUnused : NULL

Si une erreur est retournée par le rappel, elle est ignorée.

JET_cbtypFreeTableLS
0x00000400

Ce rappel se produit en raison de la nécessité pour l’application de nettoyer le handle de contexte pour le stockage local associé à une table en cours de publication par le moteur de base de données. Pour plus d’informations, consultez JetSetLS.

Le pointeur de fonction pour cette raison de rappel est configuré au moyen de JetSetSystemParameter avec JET_paramRuntimeCallback.

Les paramètres de rappel auront les valeurs suivantes :

  • sesid : JET_sesidNil

  • dbid : JET_dbidNil

  • tableid : JET_tableidNil

  • pvArg1 : handle de contexte défini à l’aide de JetSetLS.

  • pvArg2 : NULL

  • pvContext : NULL

  • ulUnused : NULL

Si une erreur est retournée par le rappel, elle est ignorée.

Spécifications

Condition requise Valeur

Client

Nécessite Windows Vista ou Windows XP.

Serveur

Nécessite Windows Server 2008 ou Windows Server 2003.

En-tête

Déclaré dans Esent.h.

Voir aussi

JET_CALLBACK