Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 24-07-2013
ebeltete ebeltete is offline
Miembro
 
Registrado: may 2003
Posts: 236
Poder: 22
ebeltete Va por buen camino
cancelar un insert en Firebird

Hola a todos, uso Firebird con Delphi 5 y los componentes MDO, resulta que cuando hago un insert en una tabla y luego quiero cancelar ese insert, al hacer tabla.refresh, ese registro que hiba a insertar pero cancele su insercion con tabla.cancel, sigue estando en la muestra, para no verlo mas tengo que hacer tabla.close tabla.open.
Que hago mal?
Saludos y gracias.
Responder Con Cita
  #2  
Antiguo 24-07-2013
Avatar de look
look look is offline
Miembro
 
Registrado: sep 2007
Ubicación: The Shire
Posts: 656
Poder: 17
look Va camino a la fama
Cita:
Empezado por ebeltete Ver Mensaje
Hola a todos, uso Firebird con Delphi 5 y los componentes MDO, resulta que cuando hago un insert en una tabla y luego quiero cancelar ese insert, al hacer tabla.refresh, ese registro que hiba a insertar pero cancele su insercion con tabla.cancel, sigue estando en la muestra, para no verlo mas tengo que hacer tabla.close tabla.open.
Que hago mal?
Saludos y gracias.
tienes que usar transacciones ,

inicias una transaccion:
database.starttransaction

confirmas la transaccion:
database.commit.

este tema se ha tratato mucho en los foros.


Saludos!
__________________
all your base are belong to us
Responder Con Cita
  #3  
Antiguo 24-07-2013
Avatar de look
look look is offline
Miembro
 
Registrado: sep 2007
Ubicación: The Shire
Posts: 656
Poder: 17
look Va camino a la fama
aqui un ejemplo:

http://www.clubdelphi.com/foros/show...=intransaction
__________________
all your base are belong to us

Última edición por look fecha: 24-07-2013 a las 01:22:41.
Responder Con Cita
  #4  
Antiguo 24-07-2013
ebeltete ebeltete is offline
Miembro
 
Registrado: may 2003
Posts: 236
Poder: 22
ebeltete Va por buen camino
Gracias por tu respuesta, estoy usando transacciones y al cancelar la insercion hago un Transaction.RollbackRetaining.
El insert se cancela correctamente porque no modifica la tabla, el tema es que si hago tabla.refresh lo sigo viendo en la muestra, la manera de no verlo es haciendo tabla.close y tabla.open. No se si esta claro pero el tabla.cancel me funciona bien al querer modificar un registro, pero no me funciona bien al querer cancelar un insert.
Gracias y saludos
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
salto de registros al cancelar insert fcobanda Conexión con bases de datos 7 16-05-2017 20:57:22
No Autoincrementa firebird en sentencia Insert Into MartinS SQL 4 16-03-2012 11:28:30
Insert masivo en firebird santiago14 Firebird e Interbase 2 24-05-2010 02:50:29
Error con insert en firebird 2.4 voldemmor Firebird e Interbase 4 17-02-2009 17:42:16
Cancelar un before insert jlrbotella Conexión con bases de datos 1 30-01-2007 20:56:45


La franja horaria es GMT +2. Ahora son las 16:12:12.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi