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)
-   -   Consulta sobre base de datos a utilizar (https://www.clubdelphi.com/foros/showthread.php?t=90135)

pablopessoa 14-04-2016 01:33:28

Consulta sobre base de datos a utilizar
 
Hola gente!
Esta ves los consulto porque me gustaria que me ayudaran con la eleccion de un motor de base de datos.
La aplicacion empezo como un sistemita para liquidar sueldos, en principio se iba a utilizar en una sola PC y como la aplicacion era muy sencilla, pense en utilizar una base de datos Access embebida.
Luego me preguntaron sobre la posibilidad de que la aplicacion corra en 3 PCs, las cuales realizarian actualizaciones en simultaneo y ahi pense que Access tal vez no fuera una buena eleccion.
Y aqui radica mi problema, no se que base de datos podria usar.
La idea seria que una PC tenga la base de datos y las otras dos accedan por red (una red simple usando un router/hub). De mas esta decir que la PC con la base debera estar encendida para que las otras dos puedan acceder.

Que motor de base de datos me recomendarian usar para esta situacion? la idea seria algo que:
  1. el motor no requiera de una gran instalacion (como SQL server por ejemplo)
  2. permita la manipulacion de datos (grabado en tablas) en simultaneo
  3. sea compatible con Delphi
  4. no requiera de una gran configuracion (como pasa a veces con MySQL)
la idea seria no utilizar una consola y que al instalar el cliente, se corran los script que genere la base de datos y la tabla.
Vi que muchos hablan de Firebird, la verdad es que nunca la use y no se si sea aconsejable para mi caso. Ademas no se si este motor requiere que haga alguna instalacion en Windows.. si necesito usar componentes especiales en Delphi.. etc



cualquier tipo de sugerencia sera muy bien recibida y agradecida.
saludos y gracias por leerme!

Casimiro Notevi 14-04-2016 02:40:24

Firebird, sin duda, es ideal.
Mira los temas similares que hay abajo del todo, al final de esta página. Ejemplo, este.

pablopessoa 14-04-2016 03:31:32

Cita:

Empezado por Casimiro Notevi (Mensaje 504373)
Firebird, sin duda, es ideal.
Mira los temas similares que hay abajo del todo, al final de esta página. Ejemplo, este.

Perfecto entonces.. habia leido por aca sobre Firebird, pero como conozco cero de FB, por las dudas consulte.
gracias!! vamos a ver que aprendo entonces :D

ecfisa 14-04-2016 04:46:30

Cita:

Empezado por pablopessoa (Mensaje 504374)
Perfecto entonces.. habia leido por aca sobre Firebird, pero como conozco cero de FB, por las dudas consulte.
gracias!! vamos a ver que aprendo entonces :D

^\||/ te aseguro que no te vas a arrepentir.

Saludos :)

tmsanchez 14-04-2016 05:06:54

Estos recursos te serán de utilidad:

http://firebird21.wordpress.com/
http://www.firebird.com.mx/

Saludos.

roman 14-04-2016 17:00:50

Salvo el punto 4, que no sé de dónde lo sacas, realmente MySQL te sirve perfectamente igual ;).

LineComment Saludos

Ñuño Martínez 14-04-2016 18:28:21

Para lo que pones, casi cualquier gestor de bases de datos. Otra cosa es que hablaras de temas como la carga del sistema (número de consultas o conexiones simultáneas, por ejemplo) o de capacidad (tamaños de registro, de tabla...) pero vamos, tanto MySQL como Firebird o incluso SQLite te sirven.

Casimiro Notevi 14-04-2016 18:32:49

sqlite en multiusuario... bueno, funcionar, más o menos funciona, aunque no lo veo muy preparado para ello.

roman 14-04-2016 18:55:59

¿sqlite puede ser multiusuario?

LineComment Saludos

fjcg02 14-04-2016 18:59:12

Hola,
a mi lo que me más me mola de fb es que puedo llevar la bbdd de un equipo a otro incluso en un pendrive. Esto me permite trabajar en el equipo del trabajo , el de casa, etc sin tener que hacer backups, restores, etc.

Además de esto, sin en el pendrive tengo fb embebed, no tengo ni que instalar nada en los equipos.

Sumado a que la funcionalidad es absoluta ( sql estandard, triggers, cursores, funciones, procedimientos, etc ) pes lo tengo todo.

Ya veis, cada uno valora más lo que soluciona sus propios problemas.

Un saludo

Casimiro Notevi 14-04-2016 19:09:23

Cita:

Empezado por roman (Mensaje 504399)
¿sqlite puede ser multiusuario?
LineComment Saludos

Pues sí, usa un bloqueo de la base de datos mientras escribe. Yo lo he probado con 3 equipos al mismo tiempo y funcionar, funciona, aunque a veces me he encontrado con la base de datos estropeada, pocas veces, pero ha ocurrido.

Cita:

Empezado por fjcg02 (Mensaje 504400)
Hola,
a mi lo que me más me mola de fb es que puedo llevar la bbdd de un equipo a otro incluso en un pendrive. Esto me permite trabajar en el equipo del trabajo , el de casa, etc sin tener que hacer backups, restores, etc.
Además de esto, sin en el pendrive tengo fb embebed, no tengo ni que instalar nada en los equipos.
Sumado a que la funcionalidad es absoluta ( sql estandard, triggers, cursores, funciones, procedimientos, etc ) pes lo tengo todo.
Ya veis, cada uno valora más lo que soluciona sus propios problemas.
Un saludo

A eso le sumamos que empiezas por un sencillo sistema local, pasas a un servidor "doméstico" windows, sigues a un potente servidor linux y, si lo necesitas, acabas montando la base de datos en uno de los monstruos del Top500 del mundo, y todo ello sin tener que hacer nada especial :)

roman 14-04-2016 19:17:46

Cita:

Empezado por Casimiro Notevi (Mensaje 504401)
A eso le sumamos que empiezas por un sencillo sistema local, pasas a un servidor "doméstico" windows, sigues a un potente servidor linux y, si lo necesitas, acabas montando la base de datos en uno de los monstruos del Top500 del mundo, y todo ello sin tener que hacer nada especial :)

Sí, eso suena muy bonito. Pero, en la realidad, ¿cuántas aplicaciones sencillitas terminan convirtiéndose en la ultimate aplicación empresarial, multinacional? ;)

LineComment Saludos

Casimiro Notevi 14-04-2016 19:18:06

Cita:

Empezado por Casimiro Notevi (Mensaje 504401)
Pues sí, usa un bloqueo de la base de datos mientras escribe. Yo lo he probado con 3 equipos al mismo tiempo y funcionar, funciona, aunque a veces me he encontrado con la base de datos estropeada, pocas veces, pero ha ocurrido.

Amplío la info, las pruebas han sido con un TPV de hostelería y tablets y smartphones como terminales.
Las pruebas las hice ejecutando en todos a la vez un típico bucle (for i=0 to 10000) que insertaba registros en una misma tabla.
Todos ellos con android.

Casimiro Notevi 14-04-2016 19:23:16

Cita:

Empezado por roman (Mensaje 504402)
Sí, eso suena muy bonito. Pero, en la realidad, ¿cuántas aplicaciones sencillitas terminan convirtiéndose en la ultimate aplicación empresarial, multinacional? ;)
LineComment Saludos

Hummm... ninguna, pero por soñar :rolleyes:
Yo solo he vivido pocos casos de empresitas que empiezan con un pc windows que hace de servidor y cliente al mismo tiempo. Al tiempo se le conecta algunos clientes más. Luego de un tiempo se monta un servidor dedicado linux. Finalmente en menos de una decena de ocasiones han llegado a montar unos servidores serios, profesionales, con montones de cpus, gigas de ram, montones de discos, etc.
En todos esos casos, nunca se tuvo que cambiar la base de datos (firebird) porque funciona igual en todos.
Pero, ciertamente, no es lo más habitual encontrarse en esa situación.

fjcg02 14-04-2016 21:40:24

Bueno,
en el trabajo me cayó un marrón - digamos de tamaño medio - y me dijeron que me buscara la vida.

Para situaros, que te dediquen un servidor es una tarea titánica, primero para ver quién te lo financia ( si la empresa o el clte) , luego quién te lo prepara ( los compas de sistemas están hasta más arriba de las cejas y lo tuyo no es urgente ), luego tienen que abrir los puertos, que por seguridad están todos cerrados, luego los dbas que también están hasta arriba sólo ponen pegas, etc.
Mi jefe pidiéndome para ayer datos de facturación, ... que salen de los srvs corporativos, pero hay que calcular cosas y prefiero no tocar las bbdds de producción. Imaginaros la movida.
Me dan permiso para hacer lo que quiera.
Me instalo fb en uno de mis pcs (portátil del 2008 con 2gbs de ram). Vuelco información de los srvs a mi bbdd fb. Cientos de miles de registros a lo largo de los últimos 3 años. Me preparo unas tablas auxiliares con mis datos, unos procedimientos almacenados que calculan mis temillas y ... coño, cómo haces eso ? Y cómo va tan rápido ? y lo has hecho tú ?
http://clubdelphi.com/foros/showthre...cular+horarios

Y bueno, ya os digo, me llevo el pendrive a casa y sigo trabajando cuando puedo. Así no tengo ni que llevarme el portátil.

Saludos

Casimiro Notevi 14-04-2016 23:20:39

^\||/^\||/^\||/
Ya no recordaba ese hilo, muy interesante :)

pacopenin 18-04-2016 13:11:13

Cita:

Empezado por fjcg02 (Mensaje 504407)
Bueno,
en el trabajo me cayó un marrón - digamos de tamaño medio - y me dijeron que me buscara la vida.

Para situaros, que te dediquen un servidor es una tarea titánica, primero para ver quién te lo financia ( si la empresa o el clte) , luego quién te lo prepara ( los compas de sistemas están hasta más arriba de las cejas y lo tuyo no es urgente ), luego tienen que abrir los puertos, que por seguridad están todos cerrados, luego los dbas que también están hasta arriba sólo ponen pegas, etc.
Mi jefe pidiéndome para ayer datos de facturación, ... que salen de los srvs corporativos, pero hay que calcular cosas y prefiero no tocar las bbdds de producción. Imaginaros la movida.
Me dan permiso para hacer lo que quiera.
Me instalo fb en uno de mis pcs (portátil del 2008 con 2gbs de ram). Vuelco información de los srvs a mi bbdd fb. Cientos de miles de registros a lo largo de los últimos 3 años. Me preparo unas tablas auxiliares con mis datos, unos procedimientos almacenados que calculan mis temillas y ... coño, cómo haces eso ? Y cómo va tan rápido ? y lo has hecho tú ?
http://clubdelphi.com/foros/showthre...cular+horarios

Y bueno, ya os digo, me llevo el pendrive a casa y sigo trabajando cuando puedo. Así no tengo ni que llevarme el portátil.

Saludos

Dímelo a mi, ya que todos mis programas parten de la premisa de ser portables y van con Firebird. Otra posibilidad es instalarlos en Dropbox, OneDrive, etc. Con un mínimo cuidado funcionan sin problemas estés donde estés.

Casimiro Notevi 18-04-2016 16:24:50

Cita:

Empezado por pacopenin (Mensaje 504443)
Dímelo a mi, ya que todos mis programas parten de la premisa de ser portables y van con Firebird. Otra posibilidad es instalarlos en Dropbox, OneDrive, etc. Con un mínimo cuidado funcionan sin problemas estés donde estés.

¿La base de datos en dropbox/onedirve? ¿tienen instalado un servidor firebird? :confused:

roman 18-04-2016 16:29:14

Si usan el servidor incrustado sí se puede ¿no?

LineComment Saludos

Delphius 18-04-2016 16:45:44

Cita:

Empezado por Casimiro Notevi (Mensaje 504448)
¿La base de datos en dropbox/onedirve? ¿tienen instalado un servidor firebird? :confused:

Creo que a lo que se refiere a que se puede emplear Dropbox, OneDrive, Hubic o cualquier otra alternativa para sincronizar la base de datos. Luego de estar sincronizada ya es cosa de conectarse y trabajar con ella.
Pero hay que tener cuidado con esto... no vaya a ser cosa que se rompa la base de datos debido a cambios constantes y un error de sincronización. Sobre todo cuantas más personas pretendan trabajar con el mismo archivo, y en simultáneo.

Yo desaconsejo esta vía, pero si no queda otra opción, que se emplee la versión embebida y se implemente vía sistema una forma de mantener el control de acceso y hacer copias de seguridad cada tanto por las dudas.

Saludos,


La franja horaria es GMT +2. Ahora son las 02:04:04.

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