Fermeture des connexions de bases de données

De RAD Studio
Aller à : navigation, rechercher

Remonter à Gestion des sessions de bases de données - Index


Remarque : Le moteur de base de données Borland (BDE, Borland Database Engine) a été déprécié. Il ne sera donc pas amélioré. Par exemple, le BDE ne prendra jamais en charge Unicode. Vous ne devriez pas entreprendre de nouveaux développements avec BDE. Prévoyez plutôt de migrer vos applications de bases de données existantes de BDE vers dbExpress.

Pour fermer une connexion de base de données individuelle, appelez la méthode CloseDatabase. Quand vous appelez CloseDatabase, le compteur de référence de la base de données, incrémenté lors de l'appel de OpenDatabase, est décrémenté d'une unité. Quand le compteur de référence d'une base de données arrive à 0, la base de données est fermée. CloseDatabase prend un paramètre, la base de données à fermer. Si vous avez ouvert la base de données avec la méthode OpenDatabase, ce paramètre peut être défini sur la valeur renvoyée par OpenDatabase.

Session.CloseDatabase(DBDemosDatabase);
Session->CloseDatabase(BCDemosDatabase);

Si le nom de base de données spécifié est associé à un composant base de données temporaire (implicite), et si la propriété KeepConnections de la session a pour valeur False, le composant base de données est libéré, fermant effectivement la connexion.

Remarque : Si KeepConnections a pour valeur False, les composants base de données temporaires sont fermés et libérés automatiquement quand le dernier ensemble de données associé au composant base de données est fermé. Une application peut toujours appeler CloseDatabase avant ce moment pour forcer la fermeture. Pour libérer les composants base de données temporaires quand KeepConnections a pour valeur True, appelez la méthode Close du composant base de données, puis la méthode DropConnections de la session.

Remarque :  L'appel de CloseDatabase pour un composant base de données persistant ne ferme pas réellement la connexion. Pour cela, appelez directement la méthode Close du composant base de données.

Il existe deux façons de fermer toutes les connexions de bases de données au sein de la session :

  • Mettre la propriété Active de la session à False.
  • Appeler la méthode Close pour la session.

Quand vous mettez Active à False, Delphi appelle automatiquement la méthode Close. Close déconnecte toutes les bases de données actives en libérant les composants base de données temporaires et en appelant la méthode Close de chaque composant base de données persistant. Finalement, Close met le handle BDE de la session à nil.

Voir aussi