FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Couldn't perform the edit because another user changed the record
Tenho este erro ao editar um registro em uma aplicação Delphi 7 com conexão via BDE a base de dados MS-SQL 2000: I've got this error when editing a record on a Delphi 7 app via BDE connection to a MS-SQL 2000 database: >> Couldn't perform the edit because another user changed the record << O erro surgiu quando a tabela principal ultrapassou 128.000 registros. I've got the error when the main table grows over 128.000 records. Antes de migrar para ADO - o que vai dar muito trabalho, gostaria de encontar alguma solução. Já tentei alterar todas as propriedades da TQuery e da conexão BDE - sem sucesso. Before begin the migration to ADO - spending too many work time, I'd like to found a solution. I've changed all TQuery properties and BDE connection properties - no success. SQL Query SELECT * from prot where prot_codigo = :cod Tenho 5 tabelas vinculadas, todas com mais de 100.000 registros, sem campos com valores decimais. I've got 5 linked tables, over 100.000 records each one, no decimal fields. Espero encontrar alguém que já passou por isso! Hope to find anyone that got this error! |
#2
|
||||
|
||||
Hello
I don’t know the problem that you have, when publishing with this sentence SQL Perhaps if you gif us a little more information we pruned to help you. Please try to right in Spanish, is better for us. See you.
__________________
Siempre Novato |
#3
|
||||
|
||||
Caral, me parece que para farmond es un poco dificil escribir en español; veo que tu entiendes el ingles, una traducción no estaría mal, luego le damos otra traduccion para responderle...
Cita:
Cita:
Última edición por cHackAll fecha: 20-08-2007 a las 18:10:30. |
#5
|
|||
|
|||
'Couldn't perform the edit because another user changed the record
Carissimos,
Para mi es mucho dificil escribir en espanol - let's try in english... Here is part of the delphi code ... qryProtocolo.FieldByName('userAlt').AsString := Usuario; qryProtocolo.FieldByName('DataHoraAlt').AsDateTime := AgoraBD; qryProtocolo.Post; - here is the error qryProtocolo.Close; qryProtocolo.ParamByName('prot_codigo').AsString := BuscaProt; qryProtocolo.Open; qryProtocolo.Locate('prot_codigo', BuscaProt, [loCaseInsensitive]); All other queries runs OK, there's no request live queries opened during edit method, there's no decimal fields. I've tried the following tips, unsuccessfully: 1. SET NOCCOUNT OFF on MS-SQL - this parameter is default on MS-SQL; 2. Use of decimal fields - BDE has a limitation of 15 decimal points - no decimal fields on the tables; 3. Use of timestamp fields - BDE and Windows different size for extended values of timestamp; 4. Change the dataset properties; Using ADO connection I've got no error - but I'll spend about 3 motnhs to migrate all the code from BDE to ADO! |
#6
|
||||
|
||||
|
#7
|
||||
|
||||
Hello
How you can keep a data if you do not open the table first Where do you open it? Where is the open code, first to post it? Sorry, my English is very bad.
__________________
Siempre Novato |
#8
|
|||
|
|||
Hi farmond
I have a question. What type of AgoraBD are you working with? Also, Could you try to do this?
Please let me know the results.... Regards
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney |
#9
|
||||
|
||||
Hi
Of course date and time, can be the problem Mister Egostar has reason that can be the error. Mani people from hear speak good English Great
__________________
Siempre Novato |
#10
|
|||
|
|||
Code
Para cHackAll - the error only occurs on edit method - insert and delete are OK;
Para Caral - this is part o the code - this form has 3585 lines; The code worked fine before the table grows over 128.000 records - no changes on the code, so the error is not in the code, but in the database connection. In other forms, thar references smaller tables, everything works fine. Para egostar - AgoraBD : TDateTime; |
#11
|
|||
|
|||
Cita:
Cita:
Regards
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney |
#12
|
|||
|
|||
Params checked
Caro egostar,
I've tried your tip, but it doesn't work - the error is not on the code, due on other forms that references to smaller tables it works fine - I think that the problem is on the BDE connection. Do you have any tip to change the BDE parameters, or a BDE version that works fine? I'm using Delphi 7.0 build 4.453, BDE Version 5.01, MS-SQL 2000 8.00.194 |
#13
|
|||
|
|||
Sorry farmond, I have a mistake, I thought that you were using ParamByName insted of FieldByName.
Are you sure that the record you are trying to update is the correct one? So, I'll have to keep a close eye on this issue in order to see if I can help you. Regards.
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
applyupdates (record not found or changed by another user) | Stell | Conexión con bases de datos | 4 | 13-05-2008 13:36:20 |
Error: "Record not found or changed by another user" | jmlifi | Varios | 0 | 27-01-2006 10:16:57 |
Record not found or changed by another user | felixgo | Conexión con bases de datos | 1 | 30-09-2005 13:07:40 |
Record not found or changed by another user. | Luis | Conexión con bases de datos | 2 | 12-08-2005 19:50:45 |
error couldn't perform the edit because another user changed the record | marcelofabiani | Conexión con bases de datos | 3 | 25-01-2005 01:55:11 |
|