FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
#1
|
|||
|
|||
Y yo nuevamente...
Me van a tener que perdonar por pesado pero bueno, no podía dejar esto así Antes de iniciar la transaccion hay que enviar una Query: Código:
sSQL := 'SET AUTOCOMMIT = 0'; Data.ExecSQL( sSQL, false ); sSQL := 'START TRANSACTION'; Data.ExecSQL( sSQL, false ); pero queria mostrar como hacer el tema del autocommit, y de esta forma síii funcionó al fin. Intenté poner en el archivo de configuración de MySQL, pero no lo toma, genera un error y no se inicia el servicio. Espero a alguien más le sirva esto, ya que siempre es bueno poder restaurar las tablas a su estado normal ante una falla de cualquier naturaleza y de esta forma no perder la atomicidad que es una propiedad de una base de datos para poder serlo precisamente. Es muy raro que MySQL venga por Defecto con autocommit activado, está muy mal esto. Saludos gente! |
#2
|
|||
|
|||
Buenas, he probado esto que comentan, dado que yo tenia el mismo problema con el autocommit.
Puse el autocommit en false, y al hacer el start transaction me tiraba el error. Ahora lo puse en false, y saque el comando starttransaction, y me ocurre otra cosa... En el programa me aparece como que el dato esta guardado, pero en la bbdd no se guarda. Esto me sucede al insertar un subtipo de articulo en la tabla SubtipoArticulo de mi BBDD. En el DBGrid aparece como que esta creado, pero al revisar la tabla con el MySQL Workbench la tabla esta vacia. ¿Por que puede estar ocurriendo esto?... es como si el commit lo hiciera en memoria, en lugar de hacerlo en la BBDD... desde ya muchas gracias, abrazo! |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
En FIBPlus uso de autocommit | El_Raso | Conexión con bases de datos | 3 | 01-09-2011 00:10:51 |
|