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 :

l'enregistrement des données ne se fait pas?


Sujet :

Bases de données Delphi

  1. #1
    Membre à l'essai
    Inscrit en
    Novembre 2008
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 29
    Points : 23
    Points
    23
    Par défaut l'enregistrement des données ne se fait pas?
    salut.
    pouvez vous m'aider svp.
    j'ai une base de données j'ai le créer sous delphi 5( alias+ tables)
    j'ai créer un nouvel projet en delphi 5
    ( table + datasource+ dbedits+dbgrid+ button enregister +button supprimer)
    j'ai execute le programme j'ai saisir les donner et j'ai clique sur button enregistrer .
    quand j'ai quitte le programme et j'ai vu la base de données via module base donne. j'ai trouvé les tables vide
    l'enregistrement des données ne faite pas .
    que doit je faire ???????????????????????????????????
    REMARQUE:
    voici le source que j'ai le écrit dan button enregistrer :
    table 1.edit;
    table 1.insert;
    table 1.post;

  2. #2
    Membre averti

    Homme Profil pro
    ingénieur, retraité
    Inscrit en
    Février 2007
    Messages
    230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : ingénieur, retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2007
    Messages : 230
    Points : 332
    Points
    332
    Par défaut
    Bonjour,

    Je pense qu'il vous manque le navigateur(TDBNavigator) qui vous permettra
    de vous déplacer dans la table, d'insérer un nouveau enregistrement (+ inserer) et d'ecrire (Valider) ensuite dans la table (action automatiquement obtenue si on se deplace ensuite dans la table).

    Exemple
    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
      TFichSt = class(TForm)
        DSst: TDataSource;
        Tbst: TTable;
        DBGst: TDBGrid;
        DBNavst: TDBNavigator;
        Labst: TLabel;
        ....  
     
    procedure TFichSt.TbCreat(NomTab, TitreFic : string);  // création d'un enreg
    begin 
      Tbst.TableName := NomTab;  // nom de la table
      Caption := TitreFic;            // titre de la fenêtre
      TbSt.Active := False;
      TbSt.ReadOnly := False;
      try
        LabSt.Caption := 'CREATION d''une LIGNE';
        DBNavSt.VisibleButtons := [nbFirst,nbPrior,nbNext,nbLast,nbInsert,
                                        nbCancel,nbPost];
        TbSt.Active := True;
        TbSt.Last;
        ShowModal;
      finally
        DBGst.Enabled := True;
        TbSt.ReadOnly := True;
        TbSt.Close;
        Tbst.TableName := '';
      end;
    end;
    Dans ce cas on n'a pas besoin de Bouton supplémentaire.

    PL

  3. #3
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 042
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 042
    Points : 40 955
    Points
    40 955
    Billets dans le blog
    62
    Par défaut
    +1 pour le TDBNavigator

    Quelques remarques également :
    on utilise Table1.Edit (modification d'un enregistrement) OU table1.insert (Ajout) mais pas les deux l'un a la suite de l'autre .

    Avec la propriété du TDbgrid à AutoEdit ces deux instructions n'ont même pas besoin d'être utilisées seul Table1.Post suffirait

    Enfin , utiliser un bloc Try ... except ... end pour le post ne serait pas un luxe
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  4. #4
    Membre à l'essai
    Inscrit en
    Novembre 2008
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 29
    Points : 23
    Points
    23
    Par défaut button enregistrer
    salut.
    dans mon travail j'ai besoin des button supplimentaire( enregistrer, supprimer, modifier) le probelème ce que les données ne se enregistre pas. j'ai besoin de code pour l'ajouter au button enregistrer?

  5. #5
    Membre averti

    Homme Profil pro
    ingénieur, retraité
    Inscrit en
    Février 2007
    Messages
    230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : ingénieur, retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2007
    Messages : 230
    Points : 332
    Points
    332
    Par défaut
    Bonjour,

    Pour enregistrer des données j'utilise, entre autre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    TbSt.Edit;
    TbSt.FieldByName('nomchamp1').AsString := EdChamp1.Text;
    TbSt.FieldByName('champ2').AsFloat := StrToFloat(EdCh2.Text);
    ...
    TbSt.Post;
    ...
    Pour un enregistrement complet à la fin de la table :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ...
    TbSt.AppendRecord([EdChamp1.text, StrToFloat(EdCh2.Text), ...]);
    ...
    sans Post (voir AIDE).

Discussions similaires

  1. Réponses: 2
    Dernier message: 21/08/2014, 09h25
  2. [MySQL] "Moulinette" mise à jour des données( qui ne fait pas la tache demandée)
    Par jmtrivia dans le forum PHP & Base de données
    Réponses: 17
    Dernier message: 04/03/2014, 16h58
  3. L'enregistrement des données ne s'effectue pas
    Par t.n.b.g dans le forum WinDev
    Réponses: 1
    Dernier message: 15/06/2008, 13h09
  4. extraire des données d'un doc pas tout a fait xml
    Par chrix10.2 dans le forum Général Python
    Réponses: 1
    Dernier message: 21/12/2006, 18h59
  5. Réponses: 7
    Dernier message: 20/03/2005, 14h53

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