couldn't perform the edit because another user changed the record


I am having a table with primary key as integer datatype and rest of the fields are ‘Decimal’ datatype with length (15,2). when i insert records it goes fine. While editing the record and posting with decimal values like 100.23 or 100.01 or 0.01 replacing the existing value also fine. Even when i edit the record and post the same record with decimals there is absolutely no problem.

But the problem is in real value i.e., 0.00, 100.00, 1000.00. when i insert record with 100.00 and posting it. and then edit the same record and post again with 100.00 then i have a problem. the error is thrown as ‘couldn’t perform the edit because another user changed the record’.

when i set the decimal field length with (20,2) then i get error in decimal value as well as in real value i.e., when i edit 100.23 with same 100.23 and post it i get error, and when i edit 100.00 with same 100.00 and post it i get error.

when i set the decimal field length with (15,2) or (12,2) i don’t get error in decimal values. only i get problem in real values.

ultimately my problem is when i edit 0.00 with 0.00 and post it i get error as ‘couldn’t perform the edit because another user changed the record’.

Kindly help me in this regard as soon as possible. since we need to edit and post always in the program with 0 value then we get always this error.

Please respond this query as soon as possible.


OK, I made a fast Google on your error message and this sounds like you are having problems with BDE Delphi libraries and not with MySQL.

The best match on Google says something about -"Hi, if you have this kind of problem, I used than updatemode to upwherechange instead of updatewhereall in the TQuery component and it´s works for me. "
What that means I do not know because I don’t do Delphi but I suggest that you ask this question on a Borland forum instead.


Thanks for your reply.

I have tried the same combination, the worst thing is, it is not updating any value at all. after posting the previous value stays instead the newly edited value.

Ok i will ask borland forum for this problem.



I have tried one of the options in ODBC - mysql odbc 3.51, in DSN - advanced option, i set the tag for ‘Return Matching Rows’, and it works for me. After setting this option i am not getting any error provided when i use only Decimal datatype, if i use float or double still i get the error.