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 :

Problème avec BatchMove


Sujet :

Bases de données Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de defluc
    Homme Profil pro
    Architecte
    Inscrit en
    Mai 2002
    Messages
    1 383
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    Localisation : Belgique

    Informations professionnelles :
    Activité : Architecte

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 383
    Par défaut Problème avec BatchMove
    Bonsoir à tous

    J'utilise le composant TBatchMove avec un TQuery comme Source et un TTable en Destination.

    La première exécution du composant TBatchMove me retourne une table dont le contenu correspond à mes attentes.

    Dans le cours de mon programme, la requête est modifiée. Mais à l'exécution du composant TBatchMove qui suit, le contenu de la table de destination n'est pas modifié. J'ai vérifié le contenu de la requête et il a bien été modifié.

    J'ai tout essayé : vider la table de destination, la détruire et la recréer... Rien n'y fait.


    Merci d'avance à tout qui pourrait me résoudre ce problème.

  2. #2
    Membre Expert Avatar de philnext
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    1 553
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 553
    Par défaut
    Bon ça ne répond pas à ta question mais je te conseille de faire ce genre de manips avec une requète SQL. De cette manière tu as une meilleur maîtrise de ce qui se passe.

  3. #3
    Rédacteur/Modérateur

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

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

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 595
    Billets dans le blog
    65
    Par défaut
    Cela fait longtemps que je n'ai plus utilisé Batchmove (excellent par ailleurs dommage qu'il ne soit qu'avec BDE) .
    Je pense que cela vient de l'option que tu utilises BatAppend,BatCopy etc ...
    Dis-en un peu plus

  4. #4
    Membre éprouvé Avatar de defluc
    Homme Profil pro
    Architecte
    Inscrit en
    Mai 2002
    Messages
    1 383
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    Localisation : Belgique

    Informations professionnelles :
    Activité : Architecte

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 383
    Par défaut
    J'ai abandonné pour une requête Sql comme suggéré par philnext qui ne pose aucun problème

    Mais, cette expérience remet en question la fiabilité de TBatchMove.

  5. #5
    Rédacteur/Modérateur

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

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

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 595
    Billets dans le blog
    65
    Par défaut
    Bizarre quand même , j'ai ,il y a de cela longtemps, fait un programme de réplication de base de données (une 20 de tables) avec batchmove et jusqu'à présent il est toujours opérationnel .

    pour ces tables et Query je n'utilisait pourtant qu'un seul composant batchmove

  6. #6
    Membre éprouvé Avatar de defluc
    Homme Profil pro
    Architecte
    Inscrit en
    Mai 2002
    Messages
    1 383
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    Localisation : Belgique

    Informations professionnelles :
    Activité : Architecte

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 383
    Par défaut
    Ceci fonctionne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
        TableRadius.Close;
        SqlQuery.SQL.Clear;
        SqlQuery.SQL.Add('Insert into "' + CurDir + '\Temp\XlRadius.Db" ' +
                         'Select * From "' + CurDir + '\Temp\TableRadius.Db" ' +
                         'Where ParcelM2 <> 0');
        SqlQuery.ExecSql;
    Mais ce qui suit donne le résultat décrit dans mon premier message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
        TableRadius.Close;
        SqlQuery.SQL.Clear;
        SqlQuery.SQL.Add('Select * From "' + CurDir + '\Temp\TableRadius.Db" ' +
                         'Where ParcelM2 <> 0');
        SqlQuery.ExecSql;
        BatchMove.Source := SqlQuery;
        BatchMove.Destination := XLTableRadius;
        BatchMove.Execute;

Discussions similaires

  1. Problème avec Batchmove
    Par Oluha dans le forum Bases de données
    Réponses: 1
    Dernier message: 25/04/2005, 16h06
  2. VC++ Direct3D8, problème avec LPD3DXFONT et LPD3DTEXTURE8
    Par Magus (Dave) dans le forum DirectX
    Réponses: 3
    Dernier message: 03/08/2002, 11h10
  3. Problème avec le type 'Corba::Any_out'
    Par Steven dans le forum CORBA
    Réponses: 2
    Dernier message: 14/07/2002, 18h48
  4. Problème avec la mémoire virtuelle
    Par Anonymous dans le forum CORBA
    Réponses: 13
    Dernier message: 16/04/2002, 16h10

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