Fermer DataBase

Utilisation du composant TDataBase


Retour au sommaire

Jusqu'à présent, nous utilisions une architecture simplifiée dans laquelle les composants Table pointaient directement sur des tables de la base de données par l'intermédiaire de ses propriétés DataBaseName et TableName.

Pour plusieurs raisons, il peut être judicieux faire pointer les composants TTable nom pas directement vers 'une base mais par l'intermédiaire d'un composant TDataBase.

Par exemple, lorsque notre base comporte un grand nombre de table il sera plus facile de changer d'Alias dans cette nouvelle architecture (une seule propriété d'un seul composant à modifier)

 

 

En fait, TDatabase permet, dans une application de base de données, de contrôler précisément la connexion avec une base de données basée sur le BDE.

Utilisez un objet TDatabase quand une application de base de données basée sur le BDE nécessite l'une des options suivantes sur la connexion avec une base de données :

  • Connexion persistante avec la base de données.

  • Accès personnalisé à un serveur de bases de données.

  • Contrôle des transactions.

  • Alias BDE spécifique à l'application

Il n'y a pas vraiment d'inconvénient à l'utilisation de cette architecture. Elle a l'avantage de faciliter certaines évolution de votre programme.

A noter que pour du SQL, le sghéma suivant est tout à fait valable :

 

Utilisation :

Placez les 3 composants suivants sur votre form ou votre DataModule:

 

Propriétés de DataBase1 :

Donnez un "nom de base de données" en modifiant la propriété DataBaseName du composant DataBase1. Ce nom ne correspond pas à un alias existant. Ce peut être ce que vous voulez, n'importe quelle chaîne de caractère. Par exemple "toto" ou "BaseTest". Choisissons pour l'exemple BaseTEST

Indiquez à DataBase1 la base de données qu'il devra utiliser.

Propriétés de Table1

Pour le composant Table1, d'habitude, on entrait directement l'alias de la base dans sa propriété DataBaseName. Cette fois ci, nous allons rentrer le "nom de base de données" que l'on avait informée pour la propriété DataBaseName du DataBase1 (ici, "BaseTest").
Cliquez à droite de la propriété DataBaseName du Table1. Vous verrez qu'il vous propose de BaseTest.
C'est ainsi que vous créez la jonction entre le Table1 et le DataBase1.

Il faut, comme d'habitude, lui indiquer la table de cette base que l'on va vouloir exploiter. Modifier la propriété TableName comme suit :

 

Propriétés de DataSource1

Pas de nouveauté, choisir Table1pour sa propriété DataSet.

Test

Placez par exemple un DBGrid et connectez le à DataSource1 en choisissant DataSource1 dans la propriété DataSource du composant DBGrid1.

Mettez à True la propriété Active de Table1 et vous verrez le contenu de votre table dans DBGrid1.

 

Exemple : Suppression de la demande de mot de passe

On a vu que le composant TDataBase représente la base de données. On peut donc par l'intermédiaire de ses propriétés modifier certains comportements. Par exemple, si on utilise une base Access, on peut faire en sorte qu'il ne nous demande plus le mot de passe s'il n'y en a pas besoin.

Pour cela, il suffit de mettre la propriété LoginPrompt à False.

 

 


Leçon suivante
Retour au sommaire