Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   acceder a una DB sin usar un componete visual (https://www.clubdelphi.com/foros/showthread.php?t=7915)

orfeo 02-03-2004 03:37:15

acceder a una DB sin usar un componete visual
 
Hola, como en subject no es muy claro, voy a intentar explicar que quiero
:)

queiro tener un procediminto que acceda a una DB pero no quiero pasarle un Tquery (componete) por parametro, osea quiero algo como:

procedure aaa;
var
db:Tquery

begin
db= ???.crete;
dd.sql.add()
dd.open;
end;

por lo que he probado, con los componetes que heredan de Component, no se puede.. dado que el .create() me pide un owen (cosa que no tengo).
lo que nesecito es aceder a base de datos sin usar dichos componetes.
algo que sea puramente O.O.

roman 02-03-2004 06:06:44

Vas por buen camino. Que no te asuste lo del owner.

El "owner" de una componente es la componente que se encarga de su destrucción. Cuando una componente se destruye, justo antes de hacerlo repasa la lista de las componentes que "posee" y las destruye a su vez. Esto es lo que pasa normalmente con un formulario; al destruirse destruye todas las componentes que posea. Por lo común el formulario "posee" todas las componentes que insertas en él.

Pero esto no implica que necesariamente deba ser así. Si, como en tu cas, deseas crear tú mismo las componentes, basta que les asignes nil como owner:

Query := TQuery.Create(nil);

significando que ninguna componente se encargará de destruirlo. Entonces la única diferencia es que debes ser tú mismo quien los destruya con

Query.Free

en algún momento, cuando termines de usarlo.

// Saludos


La franja horaria es GMT +2. Ahora son las 21:26:28.

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