Since Delphi would perform the checking for all existing fields before update a record, internally, it would generate a SQL command somewhat as like as the one shown below:
update <table>
set field1 = value1,
field2 = value2,
........
fieldx = valuex
where field1 = old_value1
and field2 = old_value2
and ............
and fieldx = old_valuex
So, just take out the where checking of the memo field would let you update normally. i.e. set pfInWhere to false of the memo field. However, you must take the risk as that field is really updated by another user before you commit your change.
Hope this help,
Athens.
Quote:
Originally posted by tarcisio
I have a field CHAR(500) in a Informix table. When I mapped this field in a TClientDataset the type is TMemoField. When I use the applyupdate in this TClientDataset, I have the error : "Record not found or changed by another user". I'm using the ProviderFlags True for the pfInUpdate and pfInWhere.
If I set False to pfInUpdate for this field I don't have the error, but, of course, the value is not saved in the database.
What I need to do ?
|