Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 24-02-2010
Edgtho Edgtho is offline
Miembro
 
Registrado: abr 2006
Posts: 47
Poder: 0
Edgtho Va por buen camino
Transacciones y Command out of sync

Buenas,

Tengo un problema que me trae de craneo. Me ha tocado pasar una aplicacion con MYSQL5 que usaba transacciones de delphi7 a Delphi2007 (es el que hay). El caso es que mientras la transaccion funciona en D7, en D2007 no hago mas que recibir "commmand out of sync, you can't run this command now".

He pasado el codigo a los nuevos metodos (beginTransaction de dbxcommon) y el resultado es el mismo.

Total que, por aislar el error creo una aplicacion nueva que contenga solo un TSQLConnection con los datos por defecto, y dos TSQLQueries.
Código:
TD := Datos.BeginTransaction;
try
    sqlQuery1.sql.text := 'select * from tabla1';
    sqlQuery1.sql.text := 'select * from tabla2';
    sqlQuery1.sqlconnection := datos;
    sqlQuery2.sqlconnection := datos;
     
    sqlQuery1.open;
    sqlQuery2.open; --> aqui ya me salta el error
....

finally
    Datos.CommitFreeAndNil(TD);
end;
No se que demonios puede estar pasando, y no creo estar equivocandome con la implementacion de la transaccion. ¿Alguna ayuda con el tema?


gracias.
__________________
Dios es real a menos que sea declarado entero
Responder Con Cita
  #2  
Antiguo 24-02-2010
Avatar de Axel_Tech
Axel_Tech Axel_Tech is offline
Miembro
 
Registrado: nov 2008
Ubicación: lugar en que está ubicado algo.
Posts: 85
Poder: 16
Axel_Tech Va por buen camino
Cita:
Empezado por Edgtho Ver Mensaje
TD := Datos.BeginTransaction;
try
sqlQuery1.sql.text := 'select * from tabla1';
sqlQuery2.sql.text := 'select * from tabla2';
sqlQuery1.sqlconnection := datos;
sqlQuery2.sqlconnection := datos;

sqlQuery1.open;
sqlQuery2.open; --> aqui ya me salta el error
....

finally
Datos.CommitFreeAndNil(TD);
end;
Creo que por eso te salta el error al abrir la Query2, ya que el SQL está vacío. Estás añadiendo los 2 SELECT al SQL de la Query1.
__________________
No hope, no dreams, no love, my only escape is Underground
Responder Con Cita
  #3  
Antiguo 24-02-2010
Edgtho Edgtho is offline
Miembro
 
Registrado: abr 2006
Posts: 47
Poder: 0
Edgtho Va por buen camino
Perdon... ha sido un error al transcribir el codigo al foro. Mira que previsualizo antes pero no me he dado cuenta.

He comprobado con un amigote y me cuenta que con Delphi2010 no le pasa. ¿Puede ser un error del driver dbxmys30.dll?
__________________
Dios es real a menos que sea declarado entero
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
Error 'Illegal PORT Command' marilinspi Internet 1 22-01-2010 13:09:23
doble linea en un Command button en visual basic 6 gulder Varios 2 30-07-2008 19:13:13
HELO command toni.vi Internet 1 16-01-2008 18:54:46
Guardar en txt todo el texto del command prompt locojoan Varios 4 09-04-2006 20:24:21
Unexpected end of command osyaemos Firebird e Interbase 6 15-07-2005 12:04:29


La franja horaria es GMT +2. Ahora son las 09:30:10.


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