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

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 16-01-2012
Perenquen Perenquen is offline
Miembro
 
Registrado: jul 2003
Posts: 27
Poder: 0
Perenquen Va por buen camino
Cerrar conexion con ADO

Buenas. Estoy realizando una conexión a una base de datos MySQL utilizando ADO y me surgió un pequeño problema. Con una única conexión todo funciona bien.
Código Delphi [-]
procedure TFP.Button1Click(Sender: TObject);
var
  AQ1,AQ2 : TADOQuery;
 
begin
  AQ1 := TADOQuery.Create(nil);
  AQ1.Connectionstring := 'DRIVER={MySQL ODBC 5.1 Driver};SERVER=192.168.1.9;test;USER=root;PASSWORD=123456;OPTION=3';

  AQ1.SQL.Text := 'SELECT * FROM T1'; // Después de esta instrucción puedo ver con un SHOW PROCESSLIST como se ha ESTABLECIDO la conexión
  AQ1.open;
  AQ1.close;
  AQ1.free;  // Después de esta instrucción puedo ver con un SHOW PROCESSLIST como se ha CERRADO la conexión
  showmessage('OK');
end;

Como dije hasta aquí no había tenido problemas, pero cuando intento ejecutar dos consultas no soy capaz de liberar la conexión.

Código Delphi [-]
procedure TFP.Button1Click(Sender: TObject);
var
  AQ1,AQ2 : TADOQuery;
 
begin
  AQ1 := TADOQuery.Create(nil);
  AQ1.Connectionstring := 'DRIVER={MySQL ODBC 5.1 Driver};SERVER=192.168.1.9;test;USER=root;PASSWORD=123456;OPTION=3';

  AQ1.SQL.Text := 'SELECT * FROM T1'; // Después de esta instrucción puedo ver con un SHOW PROCESSLIST como se ha ESTABLECIDO la PRIMERA conexión
  AQ1.open;
  
  AQ2 := TADOQuery.Create(nil);
  AQ2.Connectionstring := 'DRIVER={MySQL ODBC 5.1 Driver};SERVER=192.168.1.9;test;USER=root;PASSWORD=123456;OPTION=3';

  AQ2.SQL.Text := 'SELECT * FROM T2'; // Después de esta instrucción puedo ver con un SHOW PROCESSLIST como se ha ESTABLECIDO la SEGUNDA conexión
  AQ2.open;

  AQ2.close;
  AQ2.free;  // Después de esta instrucción puedo ver con un SHOW PROCESSLIST como NO se ha CERRADO la SEGUNDA conexión
  
  AQ1.close;
  AQ1.free;  // Después de esta instrucción puedo ver con un SHOW PROCESSLIST como se han CERRADO las DOS conexiones
  showmessage('OK');
end;

Obviamente estoy haciendo algo mal al trabajar con ADO. Alguno tiene alguna idea de que podría ser.

Gracias.
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
Cómo cerrar conexión? Delphi, Zeos y Postgres mangels PostgreSQL 4 16-11-2007 16:00:59
TcxTabSheet y cerrar LordRF OOP 4 23-03-2007 23:13:02
no cerrar Max_E. Varios 3 06-03-2007 17:01:57
Cerrar conexión al cerrar formulario arantzal Conexión con bases de datos 5 09-08-2006 12:43:52
Cerrar una aplicacion ??? Javier_A OOP 2 08-02-2006 09:32:20


La franja horaria es GMT +2. Ahora son las 09:47:29.


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