Fonction JetDetachDatabase2

S’applique à : Windows | Windows Server

Fonction JetDetachDatabase2

La fonction JetDetachDatabase2 libère un fichier de base de données précédemment attaché à une session de base de données.

Windows XP:JetDetachDatabase2 est introduit dans Windows XP.

    JET_ERR JET_API JetDetachDatabase2(
      __in          JET_SESID sesid,
      __in          const tchar* szFilename,
      __in          JET_GRBIT grbit
    );

Paramètres

sesid

Contexte de session de base de données à utiliser pour l’appel d’API.

szFilename

Nom de la base de données à détacher. Si szFilename a la valeur NULL ou une chaîne vide, toutes les bases de données attachées à sesid sont détachées.

grbit

Groupe de bits spécifiant zéro ou plusieurs des options suivantes.

Valeur

Signification

JET_bitForceCloseAndDetach

Force la base de données à être fermée et détachée. Si JET_bitForceCloseAndDetach n’est pas pris en charge, JET_errForceDetachNotAllowed sont retournés.

JET_bitForceDetach

Force le détachement de la base de données. Si JET_bitForceDetach n’est pas pris en charge, JET_errForceDetachNotAllowed est retourné.

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_errBackupInProgress

La base de données est en cours de sauvegarde et ne peut pas être détachée.

JET_errDatabaseInUse

La base de données a été ouverte par JetOpenDatabase. Les bases de données doivent être fermées avant le détachement.

JET_errDatabaseNotFound

La base de données n’était pas précédemment attachée (voir JetAttachDatabase ou JetAttachDatabase2).

JET_errForceDetachNotAllowed

JET_bitForceDetach n’est pas pris en charge.

JET_errInTransaction

Une tentative de détachement d’une base de données dans une transaction a été effectuée.

Notes

Si une base de données jointe a été ouverte (avec JetAttachDatabase), elle doit être fermée avec JetCloseDatabase avant le détachement.

Windows 2000 uniquement : les bases de données qui n’ont pas été détachées avant d’appeler JetTerm sont automatiquement attachées à nouveau lors de l’appel suivant de JetInit .

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.

Bibliothèque

Utilisez ESENT.lib.

DLL

Nécessite ESENT.dll.

Unicode

Implémenté en tant que JetDetachDatabase2W (Unicode) et JetDetachDatabase2A (ANSI).

Voir aussi

JET_ERR
JET_GRBIT
JET_SESID
JET_TABLEID
JetAttachDatabase
JetAttachDatabase2
JetCloseDatabase
JetCreateDatabase
JetCreateDatabase2
JetInit
JetOpenDatabase
JetTerm