Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Debates (https://www.clubdelphi.com/foros/forumdisplay.php?f=29)
-   -   Cual es el mejor motor de bases de datos y en que casos (https://www.clubdelphi.com/foros/showthread.php?t=62378)

Loreiev 19-12-2008 03:34:58

Cual es el mejor motor de bases de datos y en que casos
 
Hola, estoy por empezar un trabajo en el que tendría que desarrollar un sistema de stock de repuestos para una empresa de productos farmacéuticos. El tema sería que luego de hacer el análisis y decidir como se llevará a cabo la gestión del stock, luego debería realizar un programa donde ir agregando la información histórica y el stock disponible, poder analizarla y que el programa de señales de alerta cuando deva comprarse nuevas piezas o si deve realizarse el cambio de una pieza que es demaciado antigua.

Mi pregunta sería cual sería el motor de bases de datos o el lenguaje que me permitiría hacer esto de la mejor manera posible y sin ser excesivamente complejo. Yo estoy aprendiendo hace unos meses Delphi y estuve viendo algo de Access. Que me recomendarían?

Cuando combiene utilizar un motor de bases de datos y cuando otro y cuando combiene usar directamente un lenguaje de programación como el Delphi?

Desde ya muchas gracias

Saludos

Neftali [Germán.Estévez] 19-12-2008 18:13:25

La respuesta a eso es: DEPENDE

Depende de si vas a tener muchos usuarios o pocos.
Depende del nivel de seguridad que necesites.
Depende del tipo de acceso que vayas a tener (y posteriores ampliaciones que necesites).
Depende del servidor donde vaya a estar y si va a estar en un servidor.
Depende...

gatosoft 19-12-2008 22:29:39

Bueno aqui caemos siempre en la misma discusión de cual es el mejor motor y cual el mejor lenguaje... y ante eso creo que no hay una respuesta definitiva...

Todos tienen algo bueno (que los conserva en el mercado) y algo malo (que nos lleva siempre a buscar opciones)....

Tal vez sería mejor replantear la pregunta diciendo: ¿Cual lenguanje y motor me recomiendan para....?

y como dice nuestro amigo Neftali, al final todo depende.... lo que si te aconsejo es que no utilices Access para un proyecto que quieres tomar en serio....

Saludos,

egostar 19-12-2008 22:33:38

Cita:

Empezado por gatosoft (Mensaje 331619)
. lo que si te aconsejo es que no utilices Access para un proyecto que quieres tomar en serio....

Ni Paradox, ni......, depende, depende, depende :D:D:D

Salud OS

juanelo 19-12-2008 22:47:03

Pues un poco con los ojos vendados, pero yo usaría firebird.
Saludos

gatosoft 19-12-2008 23:07:40

A proposito de Paradox... hace una semana me pidieron que apoyara un proyecto en mi empresa... de mas de 120 aplicaciones es la única que está hecha en Delphi.... y pues realemente estuve feliz porque despues de un año de abstinencia iba a volver a tocar a mi Delphi... sin embargo... oh sorpresa, la que me llevé al encontrar que era un sistema hecho en Delphi 3 y Paradox, manejando un negocio critico (Negociación en la Bolsa de Valores)... afortunadamente Delphi, asi sea en su versión mas baja, lo aguanta todo....

Pasada la sorpresa, me di a la tarea de ojear la BD y adivinen que... las columnas de las tablas tenian nombres como X1, X2, X3.... No debia haberme sorprendido tanto pues me habian advertido que la aplicación habia sido desarrollada por un matematico...

No he querido ver la documentación (la poca que existe) pues temo encontrarme con algo como...

"Sea T una tabla en el dominio de los TV (Ttulos Valores) tal que Contiene un conjunto de tuplas determinadas por los campos X0, X1...Xn donde N=31 todos pertenecientes al conjunto de los enteros positivos entre 0 y 999999999999"

en fin... no queria salirme del tema.... solo queria apoyar la mocion :"Paradox tampoco", aunque depende... ejejjeje

Loreiev 20-12-2008 01:40:02

Bueno, en principio tienen razón sobre que me expresé mal, está claro que todo depende del proyecto en sí. El tema es que quiero ponerme a hacer algún curso o a investigar sobre el lenguaje o motor que vaya a usar. En principio nose bien cuan grande puede llegar a ser. Pero me imagino que no sería, por ahora algo que se manejaría a nivel de servidor, calculo que lo van a usar más bien a nivel local. Está claro que como pinta todo, en general se tiende a ir interrelacionando y haciendo sistemas que asistan a todo el proceso productivo y sus actividades auxiliares. Pero para eso me imagino que a esta empresa en particular le falta bastante, igual si hay alguna opción que no sea super compleja pero permita a su vez que en algún momento se amplíe la base de datos, mejor todabía. No habría demaciados registros, creo y en realidad lo que más me intriga en este momento (porque estuve toqueteando access y no encontré como) es como hacer la programación que le querría agregar a lo que es la base de datos en sí. En cualquiera de los motores de bases de datos se puede hacer sin problemas o en algunos es muy complejo o limitado. No es que sea la gran cosa, pero sería importante que esté.

Por otro lado, como mi interés era hacer algún curso a distancia o presencial para que me alijerara el aprendisaje y de paso me dejara un título, me pareció dificil encontrar para otra cosa que no sea Acces u Oracle (este último queda descartado por los costos de licencia), es así o me equivoco.

Saludos

PepeLolo 20-12-2008 02:08:05

Pos yo si me mojo y hasta buceo.

Nada de gestores de ficheros (xbase, paradox, access) eso es para los usuarios más avanzados, no hacen falta, bueno solo como tablas temporales y casi que no.

Siempre un RDBMS como Interbase, Firebird, MySQL, SQLServer, Informix, DB2, Postgress y/o Oracle (alguno me dejo, seguro). Lo importante de las aplicaciones que manejan datos es la integridad de los datos y esto quien lo ofrece son los RDBMS. Todos ellos son excepcionales, al que le falta algo la suple con otra. Ejemplo Interbase, Firebird son muy pobres en funciones agregadas pero lo suplen con las UDF existentes o con las que tu puedas construir (son muy sencillas en Delphi y hay cantidad de ejemplos en la web). No necesitan un DBA para la administración, soportan billones de registros y más de un centenar de usuarios concurrentes. Si puedes decidir el motor de BD y no quieres gastarte nada de pasta elige en este orden Firebird o Interbase 6, por contra si quieres gastar pasta en Interbase ya sabes a Embarcadero.

MySQL muy interesante, contiene multitudes de funciones agregadas, manejo de NULL, muy productiva. Necesita de un DBA para ponerla a punto, multitud de documentación en español. Lo mismo billones de registros y más de un centenas de usuarios. Es el RDBMS más usado en la Web, tambien es gratuito. Solo tiene una pequeña pega, tienes que estudiar un poco pues tiene multitud de parámetros de configuración.

SQLServer, Oracle e Informix, es lo mismo, la ventaja la tiene Oracle pues existen componentes de acceso nativo a este RDBMS, cosa que no ocurre con los otros dos. Estos tres necesitan un DBA para la administración, no es nada sencillo su configuración ya que manejan cantidad de parámetros para su configuración. Hombre/mujer, puestos se instala por defecto no se toca nada y ha tirar pa lante. Vamos, que hace falta estudiar bastante antes de empezar a trabajar con ellas si queremos un rendimiento optimo.

Mis preferencias reales son :Oracle si puedo y el proyecto lo merece, ya que matar moscas a cañonazos es de tontos, FireBird, Interbase, MySQL SQL Server, postgress y por último Informix.

Como casi nunca puedo con Oracle, porque eso solo fue cuando trabaje para la Administración pública, prefiero Firebird por una cuestión muy sencilla. No hace falta un DBA, es gratis, si carece de funciones agregadas las construyo o uso las que existen, maneja los valores NULL y algo prioritario en las consultas puedo hacer algo como esto
Código SQL [-] SELECT A.*, B.CAMPO1, B.CAMPO2, C.CAMPO1, C.CAMPO2... FROM TABLA1 A, (SELECT * FROM TABLA2 WHERE lo que sea) B, TABLA3 C WHERE ........



:D

matabyte 20-12-2008 16:09:35

Yo por seguridad y sobretodo por velocidad y poco consumo de memoria (de disco y ram, hasta un 10% del consumo de oracle), te recomiendo postgresql :D

jhonny 20-12-2008 16:58:24

Cita:

Empezado por PepeLolo (Mensaje 331646)
Ejemplo Interbase, Firebird son muy pobres en funciones agregadas pero lo suplen con las UDF existentes o con las que tu puedas construir (son muy sencillas en Delphi y hay cantidad de ejemplos en la web). No necesitan un DBA para la administración, soportan billones de registros y más de un centenar de usuarios concurrentes. Si puedes decidir el motor de BD y no quieres gastarte nada de pasta elige en este orden Firebird o Interbase 6, por contra si quieres gastar pasta en Interbase ya sabes a Embarcadero.

Solo me gustaria apuntar dos cositas en este parrafo...

A mi modo de ver Firebird ya no es pobre en funciones, aunque no han eliminado las UDFs (Que son muy utiles y no veo la necesidad de eliminarlas), desde la versión 2.1 han incluido muchas funciones, haciendo que el status de "pobre en funciones" ya no sea aplicable en este caso.

En cuanto a lo de que "si no quieres gastar nada de pasta" hay que elegir Firebird, pues es cierto, pero hay que tener en cuenta que lo mejor es incluir en el precio de nuestros proyectos que usen Firebird, un porcentaje de donativo, si es que queremos apoyar dicha herramienta que tantos favores nos hace.

PepeLolo 21-12-2008 01:52:07

Cita:

Empezado por jhonny (Mensaje 331673)
En cuanto a lo de que "si no quieres gastar nada de pasta" hay que elegir Firebird, pues es cierto, pero hay que tener en cuenta que lo mejor es incluir en el precio de nuestros proyectos que usen Firebird, un porcentaje de donativo, si es que queremos apoyar dicha herramienta que tantos favores nos hace.

Ahora entramos en otro debate, si es gratis es gratis, si se dan donativos el concepto gratis desaparece.
donativo.
(Del lat. donatīvum).
1. m. Dádiva, regalo, cesión, especialmente con fines benéficos o humanitarios.

No tengo muy claro que aportando un donativo este sea para fines beneficos o humanitarios.

Por cierto hace años realice una aplicación de forma altruista para colegios y nunca espere dinero ni donaciones, fue eso algo altruista. No me digas que es gratis y luego esperas que de una aportación, mi mente retorcida no lo entiende, prefiero que me digan que algo vale n€ por irrisorio que sea ese importe.

juanelo 21-12-2008 02:19:27

Cita:

Empezado por PepeLolo (Mensaje 331704)
Ahora entramos en otro debate, si es gratis es gratis, si se dan donativos el concepto gratis desaparece.
donativo.
(Del lat. donatīvum).
1. m. Dádiva, regalo, cesión, especialmente con fines benéficos o humanitarios.

No tengo muy claro que aportando un donativo este sea para fines beneficos o humanitarios.

Por cierto hace años realice una aplicación de forma altruista para colegios y nunca espere dinero ni donaciones, fue eso algo altruista. No me digas que es gratis y luego esperas que de una aportación, mi mente retorcida no lo entiende, prefiero que me digan que algo vale n€ por irrisorio que sea ese importe.

Lo que creo que Jhonny tratar de decir en su comentario, es que se tenga en cuenta una porcion de dinero para ayudar a desarrollar Firebird, y si no mal recuerdo, nunca mencionó que fuera un motor de base de datos GRATIS, y si por el contrario yo agrego que es una base de datos open source, lo cual no es estrictamente sinonimo de gratuito, y mucho menos sinonimo de proyecto ALTRUISTA.
Por supuesto que es un proyecto que requiere de dinero para financiar su desarrollo, y este en su mayoria proviene de "donativos" o pagos voluntarios, que hasta donde tengo entendido no tiene un minimo de aporte.
Por otro lado, si eres usuario de firebird, te puedo asegurar que nunca nadie te ha pedido algun pago por este producto, y si por el contrario habras recibido un pago por el el proyecto que incluyó como base de datos a FB.
En fin, es cuestion de enfoques.
Saludos

PepeLolo 22-12-2008 00:10:06

Cita:

Empezado por juanelo (Mensaje 331705)
Lo que creo que Jhonny tratar de decir en su comentario, es que se tenga en cuenta una porcion de dinero para ayudar a desarrollar Firebird, y si no mal recuerdo, nunca mencionó que fuera un motor de base de datos GRATIS, y si por el contrario yo agrego que es una base de datos open source, lo cual no es estrictamente sinonimo de gratuito

Pongo un enlace a la wiki http://es.wikipedia.org/wiki/Open_source

Solo digo que cuando no se requiere el pago por el uso o disfrute de algo este (lo que sea) es gratis. Cualquier pago por el uso y disfrute de algo deja de ser gratis. Si por cada aplicación que desarrolle o software que instale (en este caso firebird) que me aporte un beneficio tengo que realizar una donación, el concepto gratis ver enlace http://es.wikipedia.org/wiki/Licencia_Open_Source deja de ser tal, ver tambien licencia original de Firebird http://www.firebirdsql.org/index.php?op=doc&id=ipl

Cita:

Empezado por juanelo (Mensaje 331705)
Por otro lado, si eres usuario de firebird, te puedo asegurar que nunca nadie te ha pedido algun pago por este producto, y si por el contrario habras recibido un pago por el el proyecto que incluyó como base de datos a FB.
En fin, es cuestion de enfoques.

Efectivamente es cuestión de enfoque, pero pedir una donación es una forma muy sutil de decir ¡ya que usas esto y te produce un beneficio pasa por caja!. Me recuerda mucho a los curanderos "La voluntad", joer.. no si no cobro, pero si pasas por aquí pasa por caja.;)

Personalmente prefiero que me digan que algo cuesta n€, que no lo contrario y luego a la salida me tiendan la mano para que haga click en caja.:p

Bueno esto es solo un enfoque personal que se sale del tema:D

Que apuesto por las BD antes mencionadas para un proyecto, cualquiera de los RDBMS es excelente, lo que no recomiendo don BD o tablas de escritorio para un proyecto.

gatosoft 22-12-2008 00:37:51

Cita:

Empezado por matabyte (Mensaje 331671)
Yo por seguridad y sobretodo por velocidad y poco consumo de memoria (de disco y ram, hasta un 10% del consumo de oracle), te recomiendo postgresql :D

Yo apoyo esta sugerencia... tiene muchas ventajas Es una base Libre, pero con la potencia de Oracle... de hecho sigue todos sus pasos implementa casi todos sus conceptos de estructura y funcionalidad....

Logicamente, las "grandes empresas" prefieren Oracle por la seguridad y el respaldo que éste último les da.....

jhonny 22-12-2008 14:21:01

Yo sinceramente no le veo el problema en apoyar algo que me ha ayudado tanto, de algo hay que vivir en este mundo, pues no podemos esperar que un proyecto como Firebird o PostgreSQL anden solos y que quienes lo hagan (Y que lo hacen tan profesionalmente) vivan del aire.

Pero esta bien, si en ultimas tu necesitas que la base de datos no te cueste un solo centavo, pues nadie te lo esta negando y nadie te esta cobrando por ello... descarga y utiliza Firebird... nadie te impedira instalarlo y utilizarlo en cuanto proyecto desees y de la forma que desees. Es mas, por el hecho de instalar Firebird, no tendras espias, ni ningun tipo de "cosas" de esas en tu computadora.

Como dice juanelo, es cuestión de enfoques... yo mismo, hasta hace poco, nunca me habia planteado la idea de como apoyar a Firebird, hasta que alguien dijo que sería buena idea incluir en nuestros proyectos un valor para apoyar dichos proyectos... y bueno, es algo que comencé a incluir para los proyectos que se vienen este año :).

Al González 22-12-2008 18:57:04

No te preocupes PepeLolo, muchos otros sí contribuyen, así que habrá Firebird para rato para que puedas seguir usándolo gratuitamente. ;)

PepeLolo 22-12-2008 20:25:49

Cita:

Empezado por Al González (Mensaje 331875)
No te preocupes PepeLolo, muchos otros sí contribuyen, así que habrá Firebird para rato para que puedas seguir usándolo gratuitamente. ;)

jejejeje, Nooooo, si yo colaboro, procurando que haya más programadores que conozcan de las bondades de Firebird como RDBMS. Así poco a poco convierto a MSQuleros, como a mi amigo Miguel la semana pasada.:D

Por cierto Al González, colaborar no solo consiste en pasar por caja, tambien el dar a conocer de su existencia.

En ningún momento digo que no se colabore, lo que digo "es una forma muy sutil de pedir que se pase por caja", prefiero que me digan que tiene un precio. 50, 75, 100 €, Dollares o lo que sea (un jamon NO, eso se queda en casa):D

Delphius 22-12-2008 20:40:39

Hola,
Disculpen que me entrometa, y que desvirtúe un poco más al hilo.
PepeLolo, no es por atacarte pero no entiendo porqué asumes que Firebird pide sutilmente dinero. Que yo sepa la comunidad de desarrolladores de Firebird e incluso la organización que los mantiene, no ha hecho insinuación alguna de que debe donarse dinero.
Que ofrezcan la posibilidad de que alguien pueda contribuir económicamente, no es una forma de explotación comercial.

Si alguien quiere donar que done, está en su derecho. No veo porqué el asunto en insistir tanto con querer intentar ponerle un precio a Firebird, cuando el valor que tiene no es monetario, sino humanitario.

Bueno en fin no es más que una simple opinión. Podemos tener diferencias y pensar de forma distinta.

Saludos,

PepeLolo 23-12-2008 15:52:10

Ya que nos hemos salido del tema, otro giro más de tuerca.
¿Cuantos de ustedes colaboran con esos programas que tan habitualmente usamos que son free y tienen un bonito botón para donación?, ejemplo

FireFox, Thunderbird, Firebird, MySQl, distribuciones linux, el GIMP, PHP, etc.

juanelo 23-12-2008 16:34:59

Cita:

Empezado por PepeLolo (Mensaje 331970)
Ya que nos hemos salido del tema, otro giro más de tuerca.
¿Cuantos de ustedes colaboran con esos programas que tan habitualmente usamos que son free y tienen un bonito botón para donación?, ejemplo

FireFox, Thunderbird, Firebird, MySQl, distribuciones linux, el GIMP, PHP, etc.

Al menos en lo que a mi me toca, para el unico que he colaborado es para Firebird, ya que de los que mencionas solo FB y FireFox uso, pero el caso de FireFox es particular para mi al menos, ya que no me genera un beneficio de manera directa, cosa contraria a Firebird, que hace mis aplicaciones sean muy confiables y como consecuencia es el motor que mis proyectos llevan por default, y por los cuales recibo dinero.
Saludos


La franja horaria es GMT +2. Ahora son las 21:10:12.

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