[Lazarus-es] Utilizar control TSQLQuery sin conexión a BD

Jose Antonio Cuello Principal josea en artextrading.com
Vie Mayo 27 08:47:07 CEST 2011


Pero, exactamente que tiene que hacer el aplicativo, porque lo de migrar
no tiene que ser necesariamente igual en un sistema que en otro y a
veces con un pequeño cambio en el planteamiento del programa se logran
muchos avances. Respecto a los dataset en memoria creo recordar que se
explicaron distintas opciones, incluso se plantearon soluciones al
locate. El "todo" de Lazarus/Free Pascal es que te puedes "montar" lo
que necesites, pero claramente no todo está desarrollado.

Recuerdo que las rx tenían un TRxMemoryData pero deje de usarlo hace ya
mucho, tal vez siga funcionando o te pueda servir de base para crearte
tu propio componente. Otra opción es combinar Arrays con TreeView, se
pueden hacer maravillas con el canvas de los TreeView.

Un saludo.

El jue, 26-05-2011 a las 13:00 -0400, Ismael L. Donis García escribió:

> Lo que necesito es poner abrir un TSQLQuery y después hacer Append y Post 
> sobre el TSQLQuery abierto pero que no me salve los datos ni en tablas ni en 
> ningún archivo de disco, solo en memoria.
> 
> No se si me hago entender bien. Quiero tener consultas abiertas solamente en 
> memoria que las pueda actualizar, pero solo los datos en memoria nada de 
> crear archivos ni de salvar en tablas.
> 
> Solo manipulación de los datos en memoria. Estoy buscando alternativas al 
> control TMemDataset ya que los otros controles que he visto, o necesitan de 
> la creación de archivos o no tienen implementados los eventos. Por tal 
> motivo es que quería ver si podía utilizar el TSQLQuery para lo que 
> necesito.
> 
> Necesito migrar una aplicación de Visual Basic y no logró un control que me 
> trabaje en memoria como necesito. Y eso que me han dicho que en Lazarus se 
> puede hacer todo, pero no acabo de encontrar a ese todo y llevo en esto más 
> de 1 mes, caso contrario tendré que utilizar monodevelop cosa que no quería 
> hacer ya que estaría entonces trabajando con 2 sistemas y eso no me gusta 
> porque me ocupa más tiempo.
> 
> Saludos Cordiales
> =========
> || ISMAEL ||
> =========
> ----- Original Message ----- 
> From: "Fredy Gonzales" <fredyg1965 en gmail.com>
> To: "Spanish version of Lazarus List" 
> <lazarus-es en lists.lazarus.freepascal.org>
> Sent: Thursday, May 26, 2011 12:02 PM
> Subject: Re: [Lazarus-es]Utilizar control TSQLQuery sin conexión a BD
> 
> 
> No se si te sirva esto..
> 
> Yo tengo creado un componente TSQLquery a apuntando a cualquier tabla. desde
> de DataModule, eso si siempre conectado a mi base de datos principal.
> 
> Entonces cuando quiero realizar algo sencillo con mi base de datos que no
> requiera mucho problemas realizo esto
> 
> 
> // Aqui actualizo algunos datos de menos importancia.
>  With global.qrytools do begin;
>            Close;
>            SQL.Text:='UPDATE conductor Set con_imaid = :ID1 WHERE con_id =
> :ID2';
>            Params.ParamByName('ID1').AsInteger := 0;
>            Params.ParamByName('ID2').AsInteger := idCond;
>            ExecSQL;
>            Close;
>      end;
> 
> 
> // Aqui hago una consulta con el mismo componente, pero a una tabla
> distinta.
>  With global.qrytools do begin;
>           Close;
>           SQL.Text:='Select mov_id,mov_num from movil where mov_estado=0 and
> mov_id not in (Select con_idmov from conductor where con_idmov > 0)';
>           Open;
>           SetLength(aIdCboVeh,RecordCount);
>           SetLength(aNumMov,RecordCount);
>           i:= 0;
>           while Not EOF Do
>               begin
>                  cbovehiculos.Items.Add('Movil ' +
> FieldByName('mov_num').AsString);
>                  aIdCboVeh[i] := FieldByName('mov_id').AsInteger;
>                  aNumMov[i] := FieldByName('mov_num').AsString;
>                  i:= i + 1;
>                  Next;
>               end;
>           Close;
>      end;
> 
> Si te das cuenta, uso el qrytools indistintamente a cualquier cosa que yo
> quiera hacer y como vez, hasta le paso parametros.
> 
> Todo eso con el ZeosDBO.
> 
> Tengo un gran problema con Lazarus 0.9.31 que lo instale y no puedo
> reinstalar los paqueres de Zeos si no te enviara un ejemplo.
> 
> Saludos.
> 
> FG
> 
> 
> 
> 
> 
> 
> 
> ----- Original Message ----- 
> From: "Ismael L. Donis García" <ismael en citricos.co.cu>
> To: "Spanish version of Lazarus List"
> <lazarus-es en lists.lazarus.freepascal.org>
> Sent: Wednesday, May 25, 2011 2:48 PM
> Subject: Re: [Lazarus-es]Utilizar control TSQLQuery sin conexión a BD
> 
> 
> No me sirve, trabajo con Firebird y quiero que la aplicación corra tanto en
> Windows como en Linux
> 
> Gracias de todos modos por el comentario.
> =========
> || ISMAEL ||
> =========
> ----- Original Message ----- 
> From: "Maxi" <maximiliano.duarte en gmail.com>
> To: "Spanish version of Lazarus List"
> <lazarus-es en lists.lazarus.freepascal.org>
> Sent: Wednesday, May 25, 2011 3:31 PM
> Subject: Re: [Lazarus-es] Utilizar control TSQLQuery sin conexión a BD
> 
> 
> Mysql tiene la Posibilidad de crear tablas en memoria que pueden ser o
> no persistentes a reinicios
> 
> -- 
> No a la obsolecencia programada:
> http://dimensionargentina.blogspot.com/2011/01/todo-esta-disenado-para-romperse.html
> 
> Twitter: @nenunocomar
> Identi.ca: @nenuno
> Linux User #495070
> Ubuntu User #28504
> http://miexperiencialinux.blogspot.com/
> 
> El que pregunta aprende, y el que contesta aprende a responder.
> 
> _______________________________________________
> Lazarus-es mailing list
> Lazarus-es en lists.lazarus.freepascal.org
> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
> 
> 
> 
> _______________________________________________
> Lazarus-es mailing list
> Lazarus-es en lists.lazarus.freepascal.org
> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
> 
> 
> _______________________________________________
> Lazarus-es mailing list
> Lazarus-es en lists.lazarus.freepascal.org
> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
> 
> 
> 
> _______________________________________________
> Lazarus-es mailing list
> Lazarus-es en lists.lazarus.freepascal.org
> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es


------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus-ide.org/pipermail/lazarus-es/attachments/20110527/ee21ce58/attachment-0002.html>


More information about the Lazarus-es mailing list