Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Programa portátil con base de datos (sugerencia) (https://www.clubdelphi.com/foros/showthread.php?t=71862)

reevil 14-01-2011 22:22:02

Programa portátil con base de datos (sugerencia)
 
Hola foro.

Antes que nada les dejo las características del problema a resolver.
Me pidieron hacer un programa para manejar una especie de agenda que la persona pudiera utilizar en su casa y en su lugar de trabajo.

El sistema estaría sobrado para los cerca de 1000 registros que manejara con solo utilizar 4 tablas relacionadas.

Ahora los detalles (todos referentes a la computadora de la oficina en la que trabaja):

1. No se puede hacer vía web pues esta permitido el acceso solo a las paginas de la empresa.
2. No se puede instalar ningún programa externo de ningún tipo y la computadora está con lo mas básico. (nada de mysql, firebird, acces etc.)

Así pues espero puedan recomendarme que utilizar para hacer tan sencillo programa en delphi o c++ builder.

Entre las cosas que se me ocurrieron estuvo la "blasfemia" de recurrir a las viejas tablas paradox pero recordé que necesitaría instalar el BDE (no se si exista forma de hacerlo sin instalarlo).

También pensé en xml, pero la verdad no me gusta la idea de hacer un maestro detalle usando xml para guardar los registros y con archivos ni se diga.

Lo que mas me gustaría seria usar algún motor de bases de datos embebido (incrustado).

Espero sus sugerencias y comentarios.

Saludos y gracias por adelantado.

cloayza 14-01-2011 22:41:24

De acuerdo a las restricciones que mensionas...

Podrias utilizar archivos DBASE, existe un componente que te permite trabajar con el sin necesidad de BDE y esas yerbas...

El componente se llama TDBF.

Saludos cordiales

Aleca 14-01-2011 23:20:25

Me parece que SQLite te vendría bien. :)

luisgutierrezb 14-01-2011 23:55:06

Tambien una base de datos de access usando ADO

kurono 15-01-2011 00:16:21

Como dice nuestro amigo luisgutierrezb puedes usar ADO y access ya que te permite conectarte a una bd de access sin necesidad de tener el motor de conexion y realiza todas las tareas comunes de una bd ,ingresar ,eliminar actualizar ect. lo he hecho y funciona perfectamente te lo recomiendo

ahora bien para darte mas opciones puedes hacer el sistema no basandote en una base de dato sino en archivo de tipo *.ini osea registrando todo en archivo *.ini no es lo mas adecuado pero funciona.

por ultimo para hacerlo mas portable lo puedes hacer que todo se ejecute y se dirija a una memoria flash y tendras un sistema totalmente portable

Delfino 15-01-2011 02:58:34

No has pensado en TClientDataset?

Cañones 15-01-2011 02:59:41

Por que no Firebird? firebird a muerte!
Fijate en firebird embedded. Te dejo un link.
Saludos.

reevil 15-01-2011 03:23:14

Hola, antes que nada gracias por como siempre brindar tan amables respuestas.

@cloayza, utilizo bds2006 y una busqueda "rapida" en google me arrojo que no hay compatibilidad con el componente (por lo menos no tan facil).

@Aleca, me parece interesante la opción, aun que ya me decidí por otra estoy informándome sobre las bondades de sqlit, ya lo baje para hacer algunas pruebas con el.

@delfino, la verdad no habia pensado en esa opción. Gracias por el enlace.

@luisgutierrezb, kurono. Al final he optado por esta opción pues la persona que necesita el software a pesar de que no programa sabe manejar access y en su casa lo tiene instalado.

@Cañones, con miedo a ser linchado :D admito que nunca he manejado Firebird, el 99% de mis aplicaciones con base de datos son sobre c++/mysql usando componentes mydac.

Saludos.

rrf 15-01-2011 19:32:27

Cita:

Empezado por reevil (Mensaje 387621)
Hola foro.
Entre las cosas que se me ocurrieron estuvo la "blasfemia" de recurrir a las viejas tablas paradox pero recordé que necesitaría instalar el BDE (no se si exista forma de hacerlo sin instalarlo).

Aunque el tema parece finalizado, quisiera añadir un detallito referente a esta posibilidad.

Puedes usar las tablas Paradox sin instalar el BDE; para ello necesitas BDE32 que, si no recuerdo mal, era una librería que debía acompañarse de otras librerías de BDE. Como resultado, no tenías que instalar el BDE, pero funcionabas como si estuviera instalado.

Hace años estaba disponible para descargar en clubdelphi; aunque dudo que aún esté disponible.

Yo lo use hace años en una aplicación y funcionaba perfectamente.

Tampoco se si hoy en día sería mejor opción que, por ejemplo, SQLite; pero ahí está el dato por si le fuera útil a alguien.

Saludos.

rgstuamigo 17-01-2011 22:15:36

Bueno yo tambien quería agregar un poquito...

Cita:

Empezado por reevil (Mensaje 387652)
... el 99% de mis aplicaciones con base de datos son sobre c++/mysql usando componentes mydac.

Si sabes manejar MySQL entonces NO me explico por que no usar MySQL en forma Embebida???:confused:, inclusive en los componentes MyDAC existe un componente llamado "TMyEmbConnection";)
Saludos...:)

Crandel 18-01-2011 01:37:04

Yo me hiria con alguna de las opciones de Delphino o cañones, según quisieras tener tus datos en archivos planos, que son mas fáciles de modificar por el usuario en caso necesario o por una base de datos liviana y facil de utilizar que te aportaria mas robustes como es firebird embedded.

rretamar 18-01-2011 14:23:49

Aplicación monousuario "portable": Firebird embebido o SQLite. Eso es todo lo que necesitas.

Cero instalación, cero problemas, todo el poder del lenguaje SQL. Nada de MDAC, nada de formatos obsoletos como Paradox o DBF. Si usas componentes como Zeoslib, podrás usar un motor u otro con mínimos cambios.

Entonces lo que distribuirás será: El ejecutable de tu aplicación, la librería de lal motor de base de datos (un único archivo en el caso de SQLite, varios en el caso de Firebird embebido) y un único archivo conteniendo la base de datos (donde se incluyen tablas+índices+vistas+triggers).

reevil 21-01-2011 06:46:54

Hola de nuevo.

Gracias a todos por sus amables respuestas.

El proyecto ya lo termine usando MDB pues así convenía mas para el usuario ya que sabe manejar access pero me han dado mucho para leer en estos días pasados, al grado que he decidido darme la oportunidad de aprender a manejar SQLite, sé que Firebird posiblemente sea mas potente y robusto peor según lo que he leído SQLite se asemeja mucho a MySQL que es lo que he manejado toda la vida (pero no podría usarlo para proyectos personales por cuestiones de licencias), así pues ya me baje SQLite y SQLite administrator, con lo cual logre hacer mi primer base de datos.

Gracias a todos y seguire consultándolos en este experimento con SQLite. :D

Aleca 21-01-2011 11:08:42

Cita:

Empezado por reevil (Mensaje 388188)
Hola de nuevo.

Gracias a todos por sus amables respuestas.

El proyecto ya lo termine usando MDB pues así convenía mas para el usuario ya que sabe manejar access ....

uy cuantos gatitos van a moriri hoy...:( no cierto rretamar :D:D


La franja horaria es GMT +2. Ahora son las 23:00:39.

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