![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
![]() Muy buenas, desde hace poco migré de paradox (bde) a ADO y he tenido problemas cuando elimino registros, uso el locate y lo "elimina bien":
With Tabla_ADO Do Begin Open; If locate (etc) Then Begin Edit; Delete; end; End; La cuestion es que despues cuando registro con el mismo codigo (campo llave) me da el error de key violation. ¿Que estoy haciendo mal?, acaso quedan en la memoria los datos?, Si abro y cierro la tabla todo ok, pero no me parece optimo. Por cierto a veces que edito o registro tambien me manda errores o no se guarda como deberia. POR FAVOR AYUDA. De antemano muchas gracias. Desde Colombia, Jorge Luis Montes. |
#2
|
||||
|
||||
Hola
POST. Saludos
__________________
Siempre Novato |
#3
|
||||
|
||||
Bienvenido a clubdelphi, no olvides leer nuestra guía de estilo y recuerda poner etiquetas al código. Gracias por tu colaboración.
![]() .
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#4
|
|||
|
|||
![]() Buscando encontré que con la orden UpdateBatch despues del Post los datos en memoria se ingresaban ala tabla y listo.
Sin embargo aun no se como hacer esa accion despues de eliminar o cambiar datos con sql a traves del componente ADOQUERY, lo coloco despues de EXECSQL y me manda error de que no esta abierta la "consulta". Alguna idea de lo que pasa o debo hacer?. De antemano muchas gracias. |
#5
|
||||
|
||||
El ExecSQL se utiliza cuando ya tienes todo listo.... no antes. Y solo para consultas de modificación o alteración de datos. Para un "select" normal, se utiliza open.
ese ejemplo borraría de la tabla todos los registros donde " UnCampo = 1 " Saludos.
__________________
|
#6
|
|||
|
|||
Ssssii pero...
Desde que usaba bde uso esas sentencias para eliminar, el caso es que con ADOQUERY aparentemente elimina pero cuando ingreso algun registro que supuestamente eliminó envia el Key Violation, entonces lo elimina de la tabla en memoria, pero no en la fisica. Coloqué el UpdateBatch despues del ExecSql pues imaginé que asi se reflejarian las eliminaciones en la tabla fisica pero manda error:
¿Como debo codificar? |
#7
|
||||
|
||||
Hola
Saludos
__________________
Siempre Novato |
#8
|
|||
|
|||
Nada aun!!
Lo siento amigo Caral, el codigo no manda error pero los registros no se liberan de la memoria, abro la base de datos desde acces y no estan y en el programa si, las eliminaciones o cambios solo se aprecian si reinicio el programa, ¿raro no?.
Gracias por tu ayuda... |
![]() |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
necesito ayuda urgente!!! | mia85 | Conexión con bases de datos | 3 | 17-11-2009 02:50:51 |
Necesito ayuda urgente Problema con BDE | armadillo | Tablas planas | 4 | 17-03-2009 20:06:54 |
Necesito ayuda urgente | japons | Conexión con bases de datos | 4 | 14-12-2007 09:55:21 |
necesito ayuda urgente!!!! | principiante22 | Varios | 5 | 31-01-2007 00:19:49 |
Necesito ayuda urgente, please!!! | chabbertd | Internet | 0 | 29-07-2003 20:46:31 |
![]() |
|