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

C++Builder Discussion :

MySqlDAC et mise à jour des données


Sujet :

C++Builder

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Février 2004
    Messages
    582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 582
    Points : 218
    Points
    218
    Par défaut MySqlDAC et mise à jour des données
    Bonjour,
    J'ai un problème pour mettre à jour des donnés dans ma table TestTable (TMyTable)

    Je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    TestTable ->Open();
    TestTable ->FieldValues["Nom"] = "Toto";
    TestTable ->Post();
    TestTable ->Close();
    Sur le Post(), j'ai une erreur EDatabaseError "Update failed. Find 0 records).
    Pourtant quand je consulte la valeur de TestTable ->FieldValues["Nom"] , j'ai bien quelque chose et j'ai donc bien un enregistrement dans ma table....
    Suis je obligé de passer par de SQL ???

    Merci

  2. #2
    Membre averti

    Profil pro
    Inscrit en
    Juin 2005
    Messages
    351
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2005
    Messages : 351
    Points : 446
    Points
    446
    Par défaut Re: MySqlDAC et mise à jour des données
    Citation Envoyé par charliejo
    Je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    TestTable ->Open();
    TestTable ->FieldValues["Nom"] = "Toto";
    TestTable ->Post();
    TestTable ->Close();
    Tu ne localises pas l'enregistrement à modifier? Mais surtout, tu ne mets pas le record en edition (avec Edit()):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    TestTable ->Open();
    TestTable->First();
    TestTable->Edit();
    TestTable->FieldValues["Nom"] = "Toto";
    TestTable->Post();
    TestTable->Close();

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Février 2004
    Messages
    582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 582
    Points : 218
    Points
    218
    Par défaut
    J'ai effectivement oublié de copier le edit() dans mon message précédent, mais je l'avais dans mon code.
    N'ayant qu'un enregistrement dans ma table , j'avais pas besoin de me positionner... et avec le first(), cela ne change rien....

  4. #4
    Membre actif
    Avatar de Djob
    Inscrit en
    Août 2002
    Messages
    215
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 215
    Points : 279
    Points
    279
    Par défaut
    je ne connais pas MySQLDAC mais sur leur site:
    ils évoquent ce même genre d'erreur :

    http://crlab.com/mydac/faq.html#ref4



    Citation Envoyé par crlab
    On execution RefreshRecord I get an exception EDatabaseError with the message 'Refresh failed. Found %d records.' This error message raises when on executing, for example, UPDATE statement several rows in the table were modified at the server. In most cases such situations happen if in the modified table there is no unique key field or this field is not included into SELECT statement. Also you can turn off this message. Please refer to help TCustomMyDataSet.Options.StrictUpdate for details.
    probleme de clé primaire ? probleme de nom de champs ?....etc...

  5. #5
    Membre actif
    Profil pro
    Inscrit en
    Février 2004
    Messages
    582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 582
    Points : 218
    Points
    218
    Par défaut
    C'était effectivement un problème de clé primaire non défini !!!
    Merci beaucoup !!!!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [JTable] mise à jour des données
    Par tripop dans le forum Composants
    Réponses: 3
    Dernier message: 04/02/2009, 18h52
  2. CListCtrl et mise à jour des données en manuel !
    Par youngkoolboy dans le forum MFC
    Réponses: 6
    Dernier message: 22/05/2006, 15h23
  3. [C#][Access]Problème de mise à jour des données
    Par vvvvv dans le forum ASP.NET
    Réponses: 10
    Dernier message: 11/04/2006, 10h43
  4. Mise à jour des données
    Par Alex063 dans le forum Access
    Réponses: 6
    Dernier message: 31/01/2006, 17h16
  5. mise à jour des données toutes les semaines...
    Par Toff !!!!! dans le forum Access
    Réponses: 20
    Dernier message: 22/12/2005, 11h38

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