Erreur dbexpress [Résolu]

kdidier51 1 Messages postés samedi 22 janvier 2005Date d'inscription 25 mars 2008 Dernière intervention - 25 mars 2008 à 08:40 - Dernière réponse : tilab 97 Messages postés mercredi 25 octobre 2006Date d'inscription 26 octobre 2009 Dernière intervention
- 25 mars 2008 à 20:11
bonjour,
je souhaite transférer les enregistrements de tables dbase pour les mettre dans des tables Mysql.
la structure du programme est la suivante :
com_2004.active := true  //la table dBase
com_2004.first;
while not com_2004.eof do
   begin
   SQLQuery1.SQL.Clear;
   SQLQuery1.SQL.add('INSERT into communes (departement, libellé) values ('+
      quotedstr(com_2004.fieldbyname('DEP').text)+', '+quotedstr(com_2004.fieldbyname('LIBELLE').text)+')');
   SQLQuery1.execSQL();
   com_2004.next;
end;

SQLQuery1 est rattaché à un SQLConnection de type dBExpress.
Je travaille avec Delphi 7

Mon problème : il y a 38000 communes dans la table dBase. Quand le programme a réalisé environ 2000 requêtes, il y a une erreur : "erreur dBexpress : opération non supportée". La connexion au serveur SQL est arrêtée.

J'ai essayé sur plusieurs postes en XP uniquement. J'ai essayé avec une connexion locale et avec une connexion réseau. Le résultat est le même.

Quelqu'un aurait-il une idée à me proposer ?
Merci
Didier CABY
Reims
Afficher la suite 

Votre réponse

1 réponse

Meilleure réponse
tilab 97 Messages postés mercredi 25 octobre 2006Date d'inscription 26 octobre 2009 Dernière intervention - 25 mars 2008 à 20:11
3
Merci
Salut,
Essaye cette modification peut-être tu comprendras le problème et le programme ne devrait pas se bloquer.

Alex

com_2004.active := true  //la table dBase
com_2004.first;
while not com_2004.eof do
   begin
   SQLQuery1.SQL.Clear;
   SQLQuery1.SQL.add('INSERT into communes (departement, libellé) values ('+
      quotedstr(com_2004.fieldbyname('DEP').text)+', '+quotedstr(com_2004.fieldbyname('LIBELLE').text)+')');
    try
       SQLQuery1.execSQL();
    except
       showmessage(SQLQuery1.SQL.text);
    end;
   com_2004.next;
end;

Merci tilab 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 72 internautes ce mois-ci

Commenter la réponse de tilab

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.