Row cannot be located for updating delphi ado
You should not see 0 as the value either you must have some code that is adding the 0 value and that is probably your problem.
The bottom line is that ADO implements updates by action queries it generates both from data in the row and the dataset's metadata it gathers from the OLE DB Provider.
Since an updatable client-side Recordset has a dynamic property named Update Criteria which defaults (ad Criteria Upd Cols) to using the original values of the modified fields as well as the values of the key fields in the WHERE clause of the query-based update, defaults can invalidate the action queries and generate the infamous 'specified row cannot be located' error.
This error can also occur if the table lacks a primary key or a unique index, or if there is an optimistic update conflict.
---------------------------------------------------------------- Regards, Viatcheslav V. Vassiliev fastest way to access MS SQL Server, MS Jet (MS Access) and Interbase (through OLEDB) databases.
"Mathie" The error is generated when ADO can not find the record in your database to update so it will not be generated simple by moving Rows. If this only occurs in Rows you have insert then gone back to edit it is probably due to your having some default values that are set in your database.
Some values may have been changed since it was last read." I am using Delphi ADO against an Acces XP database, and D6 on Win2K. Row cannot be located for updating whenever there is a trigger for update on the table 2. Trigger causing row cannot be located for updating (SQL2K Delphi 5 ADO Express) 6.
Having re-read my post I forgot to describe the setup and circumstances, not very helpful, sorry about that.
You can change the behavior of how ADO finds a record to update using the Update Criteria property ADOData Set1.Have you tried running the stored Proc out of MSQL Query analyzer? ) I copied the table data to a temporary table, then dropped and recreated the table giving me trouble. So, if anyone gets this message, I suggest you copy your data to a temporary table, use Enterprise Manager to script the main table create command, then drop and re-create the main table and re-populate it from the temporary one with an Insert.... I have no idea why this works, but it does, so I can get back to my job again. If the triggers cause further updates to other tables and those updates happen to affect more than one row, you will get this message. -- Brian Bushay (Team B) [email protected] - the stored proc runs just fine from Query Analyser. What I did was to create a simple test program which tried to apply changes to just one table of the 3 which make up the query (using a TADOQuery). copied the data back from the temporary table, re-applied my foreign keys etc. Of course, I recognise this is not an easy thing to accomplish in a 24x7 environment, and is v. Out of interest, our database was upgraded from SQL 6.5 - maybe this has something to do with the problem? The trick is to put SET NOCOUNT on at the beginning of the trigger and SET NOCOUNT OFF at the end of the trigger. Row cannot be located for updating whenever there is a trigger for update on the table 2. My question is: how do I get more info from ADO as to which table(s) is causing this so I can track down the problem? Row cannot be located for updating on delete query 6. ' Row cannot be located for updating...' 9. Is there some kind of exception object I can test when this happens? Peter Hearn The Tado Connection has an Error property but I doubt that will give you any more information. Trigger causing row cannot be located for updating (SQL2K Delphi 5 ADO Express) 7.
Search for row cannot be located for updating delphi ado:
I have hidden the refresh button from the DBNavigiation since I cannot expect the user to remember to refresh the data after each use.