IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Voir le flux RSS

alheuredudejeuner

Travailler avec firebird 3 embarqué et Delphi Tokyo Firedac

Noter ce billet
par , 10/11/2017 à 12h43 (2180 Affichages)
Pour pourvoir utiliser Firebird 3 embarqué il nous réunir plusieurs choses:
- un répertoire firebird 3
- un outil SQL ( facultatif )
et Delphi.

Firebird 3
- Télécharger le Firebird-3.0.2.32703-0_x64_pdb.zip ou la dernière version mais .zip a https://www.firebirdsql.org/en/firebird-3-0/#Win64.
- dézipper le.
- Créer un répertoire bin à l'intérieur.
- Metter tout le contenu de Firebird à l'intérieur du bin
vous devrier avoir quelque chose comme l'image ci-dessous
Nom : bin.PNG
Affichages : 595
Taille : 9,1 Ko
- télécharger aussi Firebird-3.0.2.32703-0_Win32_pdb.zip
- dezziper le et mettez un répertoire ou bon vous semble

Delphi
Créer une nouvelle application vcl ou fmx
ajouter win64 comme platerforme cible, win32 fonctionne aussi, mais il faut mettre le contenu de Firebird dans le bin répertoire enfant de VendorHome
Ajouter un datamodule
Ajouter un composant TFDPhysFBDriverLink sur la form
Dans l'inspecteur d'objet
Metter un nom au DriverID je met FB30
Pour VendorHome je le règle sur le répertoire de Firebird dont le contenu est déplacé dans bin. chez moi : C:\Users\andre\Documents\Embarcadero\Studio\Projets\Pilotage_Transports_Tokyo_2017\Firebird-3.0.2.32703-0_x64_pdb
Dans VendorLib j'écris: fbclient.dll
Ajoutons sur notre form un composant TfdConnction
On double clique dessus
On choisi l'ID du pilote que nous venons de créer
dans Database on note notre base : C:\USERS\ANDRE\DOCUMENTS\EMBARCADERO\STUDIO\PROJETS\DEMOFB3\WIN64\DEBUG\MABASE.FB
pour UserName on note : SYSDBA
Réglons le characterSet sur UTF8
Nom : fdFB30.PNG
Affichages : 636
Taille : 15,4 Ko

Dans le datamodule ajoutons un composant TFDTransaction, et un composant TFDScript.
Dans l'éditeur de propriété du composant TFdScript, double cliquons sur SQLScripts.
Dans la fenêtre qui s'est ouverte ajoutons un script.
Dans l'editeur de propriété doucle clic sur SQL.
Ecrivons :
Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
CREATE DATABASE 'C:\USERS\ANDRE\DOCUMENTS\EMBARCADERO\STUDIO\PROJETS\DEMOFB3\WIN64\DEBUG\MABASE.FB'
  USER 'SYSDBA'
  PAGE_SIZE 4096
  DEFAULT CHARACTER SET UTF8
  COLLATION UTF8;

sur la form principale,
Puis ajoutons notre datamodule dans les Uses de l'unité main
Ajoutons un bouton
puis le code suivant
Code delphi : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
    try
    try
      DataModule3.FDScript1.ExecuteAll;
    finally
      if DataModule3.FDScript1.TotalErrors > 0
      then DataModule3.FDConnection1.Rollback
      else DataModule3.FDConnection1.Commit;
    end;
    DataModule3.FDConnection1.Connected:= True;
    ShowMessage('cool ca marche');
  except
    on E:Exception do
    begin
      ShowMessage('beurk erreur: '+ e.Message);
    end;
  end;;

C'est fini. Rien de plus juste le répertoire de firebird et Delphi

Pourgerer sa base on peut utiliser:
Un Outil SQL
- j'utilise 'sql manager' gratuit mais vous pouvez utiliser celui qui vous va bien
- télécharger le ici : https://www.sqlmanager.net/fr/produc...nager/download
- j'ai installé la version : EMS SQL Manager for InterBase/Firebird Freeware
- lancer sql manager
- Aller dans le menu Database\ register Host
Régler le protocole sur Embedded
Regler le client Library sur fbclient.dll que nous avons mis précédemment dans notre répertoire bin de Firebird 3 32 bit
chez moi ça donne : C:\Users\andre\Documents\Embarcadero\Studio\Projets\Pilotage_Transports_Tokyo_2017\Firebird-3.0.1.32609-0_Win32\bin\fbclient.dll
Nom : ems.PNG
Affichages : 687
Taille : 15,5 Ko
Puis cliquer sur next et run
dans la liste des database nous avons une icône Embedded Nom : embedded.PNG
Affichages : 580
Taille : 955 octetsqui apparaît.
Clic droit sur l'icone Embedded, Register Database.
Suivre le menu.

Pour créer une base de données avec SQL Manager:
Clic droit dessus => Create database
Next, Dans full quality database file path mettez par exemple : C:\USERS\ANDRE\DOCUMENTS\EMBARCADERO\STUDIO\PROJETS\DEMOFB3\WIN6\DEBUG\MABASE0.FB
Régler le charset sur UTF8 ou celui qui vous plais.
next puis run
Un nouvel icône apparaît mabase0 on Embedded
Ma base est créée, je peux la gérer.


remarque:
<C:> est une mauvaise idée pour créer sa base.
Avec fb25 Embedded et une plateforme cible win32 on peux tester sa connexion depuis l'IDE.

Envoyer le billet « Travailler avec firebird 3 embarqué et Delphi Tokyo Firedac » dans le blog Viadeo Envoyer le billet « Travailler avec firebird 3 embarqué et Delphi Tokyo Firedac » dans le blog Twitter Envoyer le billet « Travailler avec firebird 3 embarqué et Delphi Tokyo Firedac » dans le blog Google Envoyer le billet « Travailler avec firebird 3 embarqué et Delphi Tokyo Firedac » dans le blog Facebook Envoyer le billet « Travailler avec firebird 3 embarqué et Delphi Tokyo Firedac » dans le blog Digg Envoyer le billet « Travailler avec firebird 3 embarqué et Delphi Tokyo Firedac » dans le blog Delicious Envoyer le billet « Travailler avec firebird 3 embarqué et Delphi Tokyo Firedac » dans le blog MySpace Envoyer le billet « Travailler avec firebird 3 embarqué et Delphi Tokyo Firedac » dans le blog Yahoo

Mis à jour 09/09/2018 à 15h04 par LittleWhite (Coloration du code)

Catégories
Sans catégorie

Commentaires

  1. Avatar de SergioMaster
    • |
    • permalink
    Bonjour,

    pour moi, il y a trop de fichiers copiés. Les seuls fichiers nécessaires sont

    databases.conf
    fbclient.dll
    firebird.conf
    firebird.msg
    ib_util.dll
    icudt52.dll
    icudt52l.dat
    icuin52.dll
    icuuc52.dll
    IDPLicense.txt
    IPLicense.txt
    msvcp100.dll
    msvcr100.dll
    intl\fbintl.conf
    intl\fbintl.dll
    PlugIns\engine12.dll
    gbak, gfix etc... sont des outils qu'il n'est pas obligé de mettre en version embedded

    alanglet partage son expérience à ce sujet ici

    De même, il est important d'indiquer que la version (32 ou 64 bits) joue un rôle prépondérant, la version de la dll doit correspondre à la version du programme