FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
como se manajen las transacciones en maestro/detalle mysql.
saludos club,
Tengo una duda de como manejar las transacciones desde delphi, en mi caso debo de usar algunas tablas en maestro/detalle. Con zeos lo logro usando componentes ztables o zQuery y un Zupdate la cuestion es que al usar transacciones seran anididas por que .- primero comienzo el maester y voy agregando registros a mi detalle y al final puedo grabar los cambio. Mi pregunta es, insercion en el detalle debo de comenzar una transaccion o en su caso como juega el papel las transacciones alguien podria explicar este detalle: Start transaccion -Maestro Start transaccion -detalle Start transaccion -detalle commit gracias |
#2
|
||||
|
||||
Creo que podrias intentar con el objeto de zeos que sirve para conectar a la base de datos este tiene un procedimientoo funcion que inicia la transaccion y permite hacer el commit, ademas permite hacer el rollback si se da algun problema, siempre y cuando estes dentro de un try...except..
por cierto algunas verciones de mysql como la 4.1.xx no soportan transacciones segun lei en la pagina oficial la vercion 5.1.0 ya soporta hasta procedimientos almacenados pero no lo he probado aun Última edición por Guerth Castro G fecha: 05-04-2006 a las 20:04:39. |
#3
|
|||
|
|||
bueno, busque un fragmento que menciona el uso del try y exception esto lo obtuve de los componenetes ado:
Código PHP:
Pero para ado o seos al usar mysql debemos comenzar la transaccion me puede ayudar en resolver este misterio gracias. les agradesco |
#4
|
|||
|
|||
como manejar las transacciones explicitas para mysql
hola de nuevo, bueno como manejar las transacciones explicitas, ya que con mysql es el uso que se debe de aplicar.
podrian contestarme si es correcto lo que estoy haciendo, que en cada evento afterpost, onnewrecord, beforeedit, del componente ztable le agrege este codigo: conexion.start transaction; try conexion.commit except on E:exception do conexion.Rollback; end; Y para el de cancelar afterCAncel: conexion.start transaction; conexion.rolback; Hasta ahorita no he encontrado en donde colocar el codigo para indicarle al delphi que voy a empezar una transaccion. Por cierto que los ejemplo explica el bloque con un try.. exception pero no mencionan nada en donde corresponde. muchas gracias disculpen pero no he encontrado nada al respecto podrian ayudarme club. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
¿Como poner dos TIBQuery como maestro/ Detalle? | VRO | Firebird e Interbase | 8 | 23-02-2008 15:17:25 |
Problema tabla Maestro-detalle en la q la pk de t.detalle formad por 2cods de la maes | akinom38 | Varios | 1 | 09-11-2007 20:27:44 |
Como inicar un rep. maestro/detalle en una página nueva si el espacio es insuficiente | PabloRamos | Impresión | 2 | 30-06-2005 21:40:16 |
Como hago un campo calculado en un maestro detalle??? | Bitbanner | Conexión con bases de datos | 1 | 04-02-2005 23:03:41 |
ClientDataSet Maestro Detalle como los relaciono | ASAPLTDA | Conexión con bases de datos | 1 | 30-01-2005 00:07:48 |
|