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)
-   -   Forma correcta de conectar a la base.. (https://www.clubdelphi.com/foros/showthread.php?t=79589)

linuxtin 19-07-2012 16:30:19

Forma correcta de conectar a la base..
 
Hola a todos! Mi duda es la siguiente en la facultad me han llamado la atención por la forma en la que me conectaba a la base de datos, lo que hacia era conectar a la base ni bien se iniciaba la aplicación y cerraba la coneccion cuando cerraba la aplicación, lo que me han dicho es que me tengo que conectar para realizar una consulta determinada por ejemplo llenar un TDatagrid y luego desconectar. Si tengo que realizar unas modificaciones lo hago de forma local en la pc y al cabo de un tiempo se conecta y se realizan las modificaciones. Que opinan??
Desde ya muchas gracias!

MartinS 19-07-2012 17:07:42

Nunca se me hubiese ocurrido como lo plantean. Es mas, si esta desconectada, ¿como es posible "levantar" para modificar unos datos de forma local? ¿en que momento tomo los datos y los deja en una "base soporte" tal vez? :confused: y si alguien modifica algo mientras yo tambien modificaba localmente, a la hora de hace la escritura definitiva, ¿A quien le hace caso?.-

Evidentemente hay algo que esta faltando o bien no entiendo el problema general o a que se apunta.-
Ah también es una base de datos local (Paradox, access, etc) o en Red (interbase, firebird, mysql, ...) o algo???

Saludos.-

PD: Acabo de ver que abre, lee, llena stringgrid, cierra base, modifica stringgrid, abre nuevamente y escribe lo del stringrid, ¿Puede ser?. Tal vez soy inexperto pero no me parece lo indicado mas aun si alguien también hizo lo mismo u otra cosa total se puede ya que la base de datos estaba cerrada.-

linuxtin 19-07-2012 17:22:09

Hola, te explico:

La forma que lo trabajábamos era crear la clase cliente(modelo), en la controladora creabamos un lista de objetos osea de clientes, y los dbgrig los llenabamos con estas listas, entonces hacias la consulta, creabas las listas de objetos y llenabas los dbgrid, y ya tenias toda la info en la pc local usando objetos. cuando querias modificar buscabas ese objeto en la lista lo modificabas o uno o a los que quiseras y después te conectabas y realizabas las modificaciones en la base.

Saludos

ElDioni 19-07-2012 18:31:28

Tendras que trabajar con ClientDataSet y DataSetProvider. En el foro hay varios ejemplos al respecto.

Saludos.

ContraVeneno 19-07-2012 20:30:20

Ese es el truco, utilizar ClientDataset

Abres la conexión, se llena el clientDataset, se cierra la conexión, se trabaja con el clientedataset, se abre la conexión, se aplican los cambios (ApplyUpdates), actualizas el clientdataset, cierras la conexión.

Puedes consultar información sobre
"Ambiente conectado" o "ambiente desconectado" para que empiezes a adentrate en el tema.

Todas mis aplicaciones en Delphi siempre han estado conectadas y nunca he tenido problemas, hasta que alguien que utilizaba .Net se sorprendió de eso y no podía creer que mi aplicación estuviera siempre conectada a la base de datos.

Ojala algún experto nos dieran más pistas del tema.


La franja horaria es GMT +2. Ahora son las 00:14:22.

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