Delphi : Connecter une Base Firebird

Déclarer la base FireBird dans le Gestionnaire ODBC du panneau de configuration :

Voir l’article pour MedysCS/GYNDATA.FBD

 

Créer un nouveau projet :

  • Fichier
    • Nouveau
      • Application delphi

Créer un DataModule :

  • Fichier
    • Nouveau
      • Autre …
        • Projets Delphi
          • Fichiers Delphi
            • Module de données

datamodule

Lier le DataModule au Projet :

  • Fichier
    • Utiliser l’unité (ALT+F11)

Placer les composant ADO sur le DataModule

  • ADO = ActiveX Data Object

fb_adoconnection

3 composants liés indispensables : (Onglet dbGO)

  1. ADOConnection
  2. ADOTable ou ADOQuery
  3. DataSource (accès aux données)

AdoConnection :

  • Fait la liaison enter la table Firebird et le programme

fb_cnx_1

Toute la subtilité est dans le paramétrage de la chaîne de connexion+++

CONNEXION STRING :

Provider=MSDASQL.1;Password=masterkey;Persist Security Info=True;User ID=SYSDBA;Data Source=FIREBIRD;Mode=ReadWrite;Extended Properties="DSN=FIREBIRD;Driver={Firebird/InterBase(r) driver};Dbname=C:\MedyCS\BDCS\GYNDATA.FDB;CHARSET=ISO8859_1;PWD=masterkey;UID=SYSDBA;Client=C:\Program Files (x86)\Firebird\bin\fbclient.dll;";Initial Catalog=C:\WINDOWS\system32

 Etapes de la construction de la connexionstring

fb_cnx_2

ODBC DRIVERS

fb_cnx_3

CONNEXION : (le nom de la source de données doit être préalablement définit dans les paramètres ODBC au panneau de configuration

 fb_cnx_4

le jeu de caractères ISO8859_1 doit se paramétrer manuellement dans la ligne

Provider=MSDASQL.1;
Password=masterkey;
Persist Security Info=True;
User ID=SYSDBA;
Data Source=FIREBIRD;
Mode=ReadWrite;
Extended Properties="DSN=FIREBIRD;
Driver={Firebird/InterBase(r) driver};
Dbname=C:\MedyCS\BDCS\GYNDATA.FDB;
CHARSET=ISO8859_1;
PWD=masterkey;
UID=SYSDBA;
Client=C:\Program Files (x86)\Firebird\bin\fbclient.dll;";
Initial Catalog=C:\WINDOWS\system32

 fb_cnx_5

Lier les composants :

ADOTABLE

La table donne une image instantanée de la totalité des enregistrements

fb_table_1

  1. CONNEXION = AdoConnexion1 (Précédemment décrit)
  2. TABLENAME = la connexion de fait à la Base Firebird qui comme une Base Access comporte plusieurs tables, il faut choisir dans la liste la table qui nous intéresse.
  3. ne pas oublier d’activer la table : Active := True
  4. Si je clique sur l’icône ADOTABLE1, tous les champs de la table s’affichent
    • Il suffit de déposer un de ces champs sur la fiche principale pour construire un formulaire “rapide”

fb_table_active

DATASOURCE :

  • Il faut enfin lier la Table ‘(sur le disque) à) un jeu d’enregistrements (en mémoire) pour pouvoir injecter les données dans les champs fb_cnx_datasource

DBGRID :

  • Le plus simple des composants d’interface est le DBGrid qui affiche toutes les données de la table sous forme de grille

fb_cnx_dbgrid

ADOQUERY :

  • La composant ADOQUERY (requête) peut remplacer avantageusement le composant ADOTABLE beaucoup plus rigide, car la sélection et la présentation des données se fait par une simple requête SQL
  • Exemple :
SELECT CODE_PATIENT, NOM, PRENOM, DATE_NAISSANCE
FROM GLB_PATIENT 
WHERE (CODE_PATIENT>4) 
ORDER BY NOM;

Les composants les plus utiles pour créer un formulaire de Base de Données en 3 clics sont :

  1. DBGrid
  2. DBNavigator
  3. JvDbSearchEdit
  4. Plus tous les champs DBedit qui sont autogénérés en déposant les entrée de la table ouvert sur la fiche…

 

Laisser un commentaire