Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 13-04-2006
Arturo Arturo is offline
Miembro
 
Registrado: sep 2004
Posts: 91
Poder: 20
Arturo Va por buen camino
como emplear la transacciones

saludos, he comprendido como usar las transaccion con zeos en un bloque try.. except pero no entiendo en donde poner el bendito codigo, es decir escribirlo en los eventos onnewrecord, beforeedit, beforedelete.
cuando ejecuto un tabla.append delphi sabe que hay que agregar un registro es correcto realizarlo de esta manera o en de que modo, he encontrado un codigo en este foro el cual menciona que lo resolvio.
Si alguin sabe como emplearlo o de que manera se los agradeceria, ya que los dbedit estan vinculados a las tablas por tal motivo si yo ejecuto un edit habo mis cambios en mis dbedit's y lugo hago un post me afecta los cambios quisiera saber en donde introdusco las transacciones eso es semejante cuando se trate del maestro/detalle.

Código PHP:
try

      
//Preparamos la transacción
      
DataSet.SQL.Clear;
      
DataSet.SQL.Add('SET AUTOCOMMIT = 0');
      
DataSet.Execute;

      
//Inicializamos la transacción
      
DataSet.SQL.Clear;
      
DataSet.SQL.Add('start transaction');
      
DataSet.Execute;

      
//Seleccionamos el registro a modificar con propiedades correctas
      
DataSet.SQL.Clear;
      
DataSet.SQL.Add('SELECT * FROM tabla LOCK IN SHARE MODE');
      
DataSet.Execute;

      
//Actualizamos los datos del campo correspondiente
      
DataSet.SQL.Clear;
      
DataSet.SQL.Add('UPDATE tabla SET');
      
DataSet.SQL.Add('campoDB=datosAct');
      
DataSet.SQL.Add('WHERE condicion<>0');
      
DataSet.Execute;

      
//Finalizamos la transacción
      
DataSet.SQL.Clear;
      
DataSet.SQL.Add('commit');
      
DataSet.Execute;

      
//Restauramos las propiedades originales
      
DataSet.SQL.Clear;
      
DataSet.SQL.Add('SET AUTOCOMMIT = 1');
      
DataSet.Execute;

    
except

      on E
Exception do begin
        
//Deshacemos los pasos de la transacción
        
DataSet.SQL.Clear;
        
DataSet.SQL.Add('RollBack');
        
DataSet.Execute;

      
end
Responder Con Cita
 



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
Como codifico las transacciones en delphi, y como jalo una vista desde SQL Server? Felipe Conexión con bases de datos 2 06-01-2008 03:00:04
Emplear Store Procedure La__X Conexión con bases de datos 5 19-01-2006 02:03:13
Como Libero Transacciones Activas El_Perrito Firebird e Interbase 2 08-06-2005 02:08:27
Como usar transacciones gario SQL 3 17-12-2003 20:52:29
Como usar las transacciones que es lo correcto azraelrvg Firebird e Interbase 1 21-10-2003 23:02:37


La franja horaria es GMT +2. Ahora son las 18:03:31.


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