IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bases de données Delphi Discussion :

Enregistrement dans une table paradox


Sujet :

Bases de données Delphi

  1. #1
    Membre averti
    Inscrit en
    Mars 2007
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 19
    Par défaut Enregistrement dans une table paradox
    J'ai 20 images différentes avec des caractéristiques (attributs) différentes que j'enregistre dans ma table de base de données constituée de 4 champs, dès l'exécution du programme. Le code est le suivant pour trois images. J'utilise Delphi7 et paradox7.

    Code : 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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
     
    Procedure TForm1.FormCreate(Sender:TObjet);
    var redisotrop1,redisotrop2,redisotrop3: string ;
    var rilk, rilca, rilsc:String;
    var image1,image2,image3 :TBitmap;
    begin
    // Initialisation des chaînes de caractères consttituant les noms des images
    redisotrop1:='redisotrop1';
    redisotrop2:='redisotrop2';
    redisotrop3:='redisotrop3';
     
    {Initialisation des chaînes de caractères constituant les étiquettes des images}
     
    rilk:='rilk';
    rilca:='rilca';
    rilsc:='rilsc';
     
    // Enregistrer les enregistrements dans la base de données
     
     
    image1:=TBitmap.create;
    image1.LoadfromFile('\redisotrop1.bmp');
    Table1.InsertRecord([redisotrop1,rilk,image1,1]);
     
    image2:=TBitmap.create;
    image2.LoadfromFile('\redisotrop2.bmp');
    Table1.InsertRecord([redisotrop2,rilca,image2,2]);
     
    image3:=TBitmap.create;
    image3.LoadfromFile('\redisotrop3.bmp');
    Table1.InsertRecord([redisotrop3,rilsc,image3,3]);
     
    end;
    Je rappelle que j'ai au total 20 images, donc 20 enregistrements au total. A la fin des enregistrements et par visualisation de toutes les images dans mon application via la base créée, je me rends compte que les images enregistrées dans ma base sont toutes les mêmes alors qu'elles sont différentes.

    Ce qui me vient en tête, c'est que compte tenu du nombre d'image et l'utilisation repetitif de Bitmap fait qu'il ya des problème de memoire. Faut il liberer des mémoires? Je ne sais pas.

    Quelqu'ul peut bien m'aider. Merci d'avance.

  2. #2
    Expert éminent
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 041
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 14 041
    Par défaut
    Déjà tu peux faire ceci (quelqu'un l'avait déjà proposé pour réduire ton code dans un autre sujet)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    ObjBitmap := TBitmap.Create;
    try
      ObjBitmap .LoadfromFile('\redisotrop1.bmp');
      Table1.InsertRecord([redisotrop1,rilk,ObjBitmap ,1]);
     
      ObjBitmap.LoadfromFile('\redisotrop2.bmp');
      Table1.InsertRecord([redisotrop2,rilca,ObjBitmap ,2]);
     
      ObjBitmap.LoadfromFile('\redisotrop3.bmp');
      Table1.InsertRecord([redisotrop3,rilsc,ObjBitmap ,3]);
    finally
      ObjBitmap.Free();
    end;
    Chaque Create doit avoir son Free ... c'est la base de l'objet en delphi

    Ensuite, la même image à chaque fois avec trois objets différents, ce n'est pas normal ... es-tu sur de ta procédure de lecture ...

    ensuite, comme je te l'avais conseillé, tu ferais mieux de stocker l'image dans le un sous répertoire des tables, et de stocker le nom de l'image ... tes tables seront plus robustes dans le temps ... sinon c'est pour moi un suicide ...
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

Discussions similaires

  1. Réponses: 6
    Dernier message: 07/11/2012, 00h45
  2. additionné des enregistrements dans une table paradox
    Par roubase dans le forum Bases de données
    Réponses: 6
    Dernier message: 27/02/2012, 16h08
  3. Nombre d'enregistrement dans une table MySQL
    Par tom06440 dans le forum SQL Procédural
    Réponses: 7
    Dernier message: 21/10/2005, 19h07
  4. AJOUT d'un ENREGISTREMENT dans UNE TABLE
    Par ramo dans le forum Bases de données
    Réponses: 2
    Dernier message: 01/08/2005, 16h24
  5. trouver et remplacer dans une table paradox
    Par Yepazix dans le forum Bases de données
    Réponses: 3
    Dernier message: 23/09/2004, 02h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo