Bonjour,
Je souhaite effectuer une opération
très simple : Mettre à jour les données d'un champ d'un
enregistrement.
Je lis dans une table Paradox des infos qui sont ensuite
enregistrées dans une table MySQL.
L'accès à la base de données MySQL se fait
par ODBC et la table en question est déclarée en TADOTable.
L'accès à la base
de données Paradox se fait par BDE et la table en question est déclarée en
TTable.
Voici mon source :
(Toutes les déclarations sont correctement
faites)
Code :
Table001.First;
while not Table001.Eof do
begin
notices.Append;
notices.Fields[1].AsString := Table002.Fields[3].AsString;
...
notices.Post;
id_notice := notices.fields[0].AsInteger;
... xtmp_ved est initialisée ...
if notices.Locate('ID_Notice', id_notice, [loCaseInsensitive]) then
begin
notices.Edit;
notices.Fields[8].AsString := IntToStr(xtmp_ved);
notices.Post;
end;
...
Table001.Next;
end;
Et voilà l'erreur
obtenue :
Citation:
| La
ligne n'a pas pu être trouvée pour la mise à jour. Certaines valeurs ont peut
être changé depuis leur dernière lecture. |
L'erreur
est obtenue après que 2 ou 3 enregistrements soient correctement traités. La
partie APPEND fonctionne parfaitement bien. C'est le EDIT qui semble être
problématique (en gras). Il semble que ce soit un problème de positionnement
mais bon....
Merci par avance pour l'aide que vous pourrez
m'apporter.