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

Langage Delphi Discussion :

Problème ADOQuery après migration de Delphi7 vers Delphi XE7


Sujet :

Langage Delphi

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Juin 2015
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Algérie

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Juin 2015
    Messages : 21
    Points : 7
    Points
    7
    Par défaut Problème ADOQuery après migration de Delphi7 vers Delphi XE7
    Bonjour tout le monde
    j'ai développer une application de base de donnée avec Delphi7 et le SGBD MSaccess toute on utilisant la bibliothèque de connexion ADO, tout marchait bien, depuis quelques jours j'ai procédé a la migration de borland delphi7 vers Radstudion delphi XE7, là ou je rencontre un problème de rafraîchissement de donnée avec le composant TADOQuery. [ADOQuery.requery()] ou [ADOQuery.refresh], ces deux méthodes ne marche pas .
    merci pour votre aide.

  2. #2
    Membre éprouvé Avatar de BuzzLeclaire
    Homme Profil pro
    Dev/For/Vte/Ass
    Inscrit en
    Août 2008
    Messages
    1 606
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Dev/For/Vte/Ass

    Informations forums :
    Inscription : Août 2008
    Messages : 1 606
    Points : 1 113
    Points
    1 113
    Par défaut
    Citation Envoyé par shibahop Voir le message
    Bonjour tout le monde
    j'ai développer une application de base de donnée avec Delphi7 et le SGBD MSaccess toute on utilisant la bibliothèque de connexion ADO, tout marchait bien, depuis quelques jours j'ai procédé a la migration de borland delphi7 vers Radstudion delphi XE7, là ou je rencontre un problème de rafraîchissement de donnée avec le composant TADOQuery. [ADOQuery.requery()] ou [ADOQuery.refresh], ces deux méthodes ne marche pas .
    merci pour votre aide.
    Bonjour,

    Si cela peut aider, j'ai eu un cas similaire (en D2009) avec des requêtes de mise à jour/Delete etc.. qui une fois exécutées ne modifiaient pas mon affichage de la table impactée, table liée à une requête SELECT (évidement que j’actualisais ) , le problème venait du composant ADOconnection.

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Juin 2015
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Algérie

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Juin 2015
    Messages : 21
    Points : 7
    Points
    7
    Par défaut
    avec delphi 7 ça marche bien

  4. #4
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 064
    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 064
    Points : 41 021
    Points
    41 021
    Billets dans le blog
    62
    Par défaut
    Bonjour
    Pourquoi ne pas faire un bête close/open ?

    Citation Envoyé par Embarcadero
    Remarque : La méthode Refresh ne fonctionne pas pour tous les descendants de TDataSet. En particulier, les composants TQuery ne gèrent pas la méthode Refresh si la requête n'est pas dynamique. Pour actualiser un objet TQuery statique, fermez et réouvrez l'ensemble de données.
    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

  5. #5
    Membre éprouvé Avatar de BuzzLeclaire
    Homme Profil pro
    Dev/For/Vte/Ass
    Inscrit en
    Août 2008
    Messages
    1 606
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Dev/For/Vte/Ass

    Informations forums :
    Inscription : Août 2008
    Messages : 1 606
    Points : 1 113
    Points
    1 113
    Par défaut
    Citation Envoyé par shibahop Voir le message
    avec delphi 7 ça marche bien
    J'ai des clients qui me disent la même chose "Pourtant cela fonctionnait hier...", je leur explique que quand leur voiture tombe en panne ce n'est pas le cas la veille !!

    Tu peux donner du détail sur ton projet ? tes connexions par exemple, etc... ?

    Je pense que tu as déjà tenté de remplacer le(s) ADOConnection ?

    Essai de créer un nouveau projet en exécutant quelques simples requêtes sur ta base.

    c'est du MDB ou ACCDB ? tu utilises quel ODBC ?

  6. #6
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 064
    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 064
    Points : 41 021
    Points
    41 021
    Billets dans le blog
    62
    Par défaut
    Citation Envoyé par BuzzLeclaire Voir le message
    le problème venait du composant ADOconnection.
    ça ne me rabiboche pas avec ADO
    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

  7. #7
    Membre éprouvé Avatar de BuzzLeclaire
    Homme Profil pro
    Dev/For/Vte/Ass
    Inscrit en
    Août 2008
    Messages
    1 606
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Dev/For/Vte/Ass

    Informations forums :
    Inscription : Août 2008
    Messages : 1 606
    Points : 1 113
    Points
    1 113
    Par défaut
    Citation Envoyé par SergioMaster Voir le message
    ça ne me rabiboche pas avec ADO
    Bon c’était plus subtile que cela, le composant ADOConnection en lui même marchait très bien, c’était la manière dont je l'utilisais où l'initialisais plutôt...

    ADO est ton ami

  8. #8
    Futur Membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Juin 2015
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Algérie

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Juin 2015
    Messages : 21
    Points : 7
    Points
    7
    Par défaut
    J'ai essayer différent sqbd tel que Sqlserver, Firebird, accès MDB toujours pareil. Le ADOQuery1. Requery() ça marche pas, je suis dans l'obligation de passer pas Close, Open mais c'est pas une solution. Pourtant avec Delphi7 ça marche bien.

  9. #9
    Futur Membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Juin 2015
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Algérie

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Juin 2015
    Messages : 21
    Points : 7
    Points
    7
    Par défaut
    Citation Envoyé par BuzzLeclaire Voir le message
    J'ai des clients qui me disent la même chose "Pourtant cela fonctionnait hier...", je leur explique que quand leur voiture tombe en panne ce n'est pas le cas la veille !!

    Tu peux donner du détail sur ton projet ? tes connexions par exemple, etc... ?

    Je pense que tu as déjà tenté de remplacer le(s) ADOConnection ?

    Essai de créer un nouveau projet en exécutant quelques simples requêtes sur ta base.

    c'est du MDB ou ACCDB ? tu utilises quel ODBC ?
    J'ai essayè différent sgbd tel que Sqlserver, Firebird, accès MDB toujours pareil

  10. #10
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 064
    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 064
    Points : 41 021
    Points
    41 021
    Billets dans le blog
    62
    Par défaut
    passer pas Close, Open mais c'est pas une solution.
    franchement je ne vois pas pourquoi sachant qu'Embarcadero, dans sa doc, indique clairement que dans certains cas c'est la meilleure solution, et qu'en plus cela dépend du SQL à ré-exécuter
    voir pour Refresh http://docwiki.embarcadero.com/Libra...ataSet.Refresh
    por Requery http://docwiki.embarcadero.com/Libra...ataSet.Requery


    Changer de SGBD ne changera rien à l'histoire, n'étant pas objectif en la matière je dirai qu'il faut plutôt changer de composants ADO-> Firedac


    Avez-vous essayé en mettant explicitement une TExecuteOption ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ADOQuery1.Requery(TExecuteOption.eoAsyncExecute);
    Il se peut qu'il y ait un bogue dans la version XE7 donc à part regarder dans les sources ...
    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

  11. #11
    Membre éprouvé Avatar de BuzzLeclaire
    Homme Profil pro
    Dev/For/Vte/Ass
    Inscrit en
    Août 2008
    Messages
    1 606
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Dev/For/Vte/Ass

    Informations forums :
    Inscription : Août 2008
    Messages : 1 606
    Points : 1 113
    Points
    1 113
    Par défaut
    Citation Envoyé par shibahop Voir le message
    J'ai essayer différent sqbd tel que Sqlserver, Firebird, accès MDB toujours pareil. Le ADOQuery1. Requery() ça marche pas, je suis dans l'obligation de passer pas Close, Open mais c'est pas une solution. Pourtant avec Delphi7 ça marche bien.
    Tu utilises ceci ADOQry.DataSource.DataSet.Refresh; ou cela ADOQry.Refresh; ?
    Car si ton Open/Close fonctionne normalement ADOQry.DataSource.DataSet.Refresh; doit fonctionner.

  12. #12
    Futur Membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Juin 2015
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Algérie

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Juin 2015
    Messages : 21
    Points : 7
    Points
    7
    Par défaut
    Merci à vous tous.
    En fin ça pour requery.

Discussions similaires

  1. Réponses: 0
    Dernier message: 08/05/2014, 10h42
  2. Réponses: 1
    Dernier message: 14/07/2012, 12h16
  3. Problème requête après migration vers 2008
    Par SLE dans le forum Développement
    Réponses: 4
    Dernier message: 22/09/2011, 16h19
  4. Réponses: 11
    Dernier message: 15/01/2008, 13h28
  5. Problème champ après import d'excel vers access
    Par David M dans le forum Access
    Réponses: 6
    Dernier message: 16/10/2005, 11h53

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