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)
-   -   Opiniones acerca del uso de SQL (https://www.clubdelphi.com/foros/showthread.php?t=68046)

Delphitest 21-05-2010 08:02:46

Opiniones acerca del uso de SQL
 
Buenos días a tod@s,

estoy haciendo una pequeña aplicación sencilla para llevar el control de las horas extras de los trabajadores de una empresa.

El salto a usar SQL es para mi un mundo nuevo y me pierdo por completo ya que me he acostumbrado a Access.

En este caso y tambien con ánimo de aprender me interesa usar SQL, la duda que tengo es con qué servidor.

El cliente tiene cierto interés en que use SQL Server (en su versión gratuita) pero como tambien se oye MySQL, FireBird ... ando un poco perdido. Quiero meterme con algo estable pero que ya me sirva en un futuro para otros programas.

Alguien podría opinar acerca de este tema y darme su opinión en base a sus experiencias?

Por cierto, pienso usar Lazarus, lo digo por el tema de ADO que no existe, he instalado ZeosLib.

Muchas Gracias por vuestro tiempo

Un abrazo

duilioisola 21-05-2010 08:46:52

Primero la parte de la "gratuidad" del servidor que utilices.

Si vas a vender esta aplicación deberás tener en cuenta que:
Firebird: es 100% Gratuita y Libre para uso comercial.
MySQL: tiene una licencia que deberás estudiar un poco porque no es gratuita para uso comercial.
MSSQLServer: no he estudiado la licencia, pero me sorprendería enterarme de que es gratuita para uso comercial.

mcs 21-05-2010 09:35:07

Cita:

Empezado por duilioisola (Mensaje 364877)
Primero la parte de la "gratuidad" del servidor que utilices.

Si vas a vender esta aplicación deberás tener en cuenta que:
Firebird: es 100% Gratuita y Libre para uso comercial.
MySQL: tiene una licencia que deberás estudiar un poco porque no es gratuita para uso comercial.
MSSQLServer: no he estudiado la licencia, pero me sorprendería enterarme de que es gratuita para uso comercial.

Hasta donde yo tengo entendido, MySQL es gratuito para uso comercial, siempre y cuando no enlaces las librerías propias del MySQL con tu aplicación. Si usas comunicación por sockets o cualquier otro tipo de IPC, no hay ningún problema.

El SQLServer Express (la versión gratuita) es gratuita para uso comercial, pero con limitaciones (usa cómo máximo 1GB de RAM, 1 nucleo de CPU y me parecen que las bases de datos están limitadas de tamaño).

Personalmente, yo usaría SQLServer, MySQL o Firebird, ordenadas por prioridad. Por que motivo? Pues en mi caso, cuestión de gustos...

Saludos,

Marc

Casimiro Notevi 21-05-2010 09:58:21

Es un tema que se ha tratado muchas veces aquí, y las que quedan :)
MS Sql no sólo está limitado, sino que es un sistema cerrado, privado y muy caro, pues a pesar de contar con una versión gratis (que no es libre) que está limitada y recortada, también hay que tener en cuenta que estás atado y bien atado a windows, de ahí no puedes salir.
Sin embargo, proyectos como mysql, postgresql y firebird son totalmente distintos, abiertos, libres, sin restricciones, además de gratis, multiplataforma, lo puedes instalar en multitud de sistemas operativos y no tienen nada que envidiar a mssql, más bien todo lo contrario, son sistemas que ocupan muy poco espacio, se instalan muy fácil, no necesitan mantenimiento, son muy rápidos, cómodos de usar, son escalables desde pequeños ordenadores hasta los servidores más grandes del mundo, ya que funcionan en linux, y como todos sabéis, casi todos los mayores y potentes ordenadores del mundo funcionan con linux.
Por poner un simple ejemplo, hace poco, la empresa redhat hizo una comparativa entre una versión de postgresql y mssql, usaron unos servidores bien configurados para ambos sistemas, postgresql en linux y mssql en w2008, fueron optimizados para los sistemas operativos donde funcionan, usaron equipos muy potentes y con mucha memoria ram: 48 y 64 Gigas de ram, pues bien, en todas las pruebas postgresql superó a mssql.
Aquí está el documento en formato pdf.

Yo me quedo con firebird y postgresql, bastante más atrás mysql. El producto de microsoft ni siquiera entra en mi escala, tendría que "amarrarme" a windows y a todos los programas de microsoft, y de ahí no podría salir jamás.

Y si además, nuestro amigo Delphitest piensa trabajar en linux con lazarus... está totalmente descartado mssql. Bienvenido a la libertad.

Delphitest 22-05-2010 06:51:56

Muchas gracias por vuestras aportaciones.

Crea que me decanto por PostgreSQL o al menos voy a intentarlo.

Ya lo he instalado y enlazado con parte del programa.


Un saludo

MAXIUM 22-05-2010 07:50:43

ejem....

Leyendo La Cara Oculta de Delphi... o no fue ahí?. La cosa es que las consultas de SQL y todo lo que tenga que ver con SQL, es para cuando quieres hacer una aplicación multiusuario accesible por red a un Servidor. Lo que no implica lo contrario (monousuario y en local).

Al ser monousuario, las consultas con SQL lo harían más lento. en ese caso, usar los componentes de TTable y/o TDBNavigator, etc.

Delphitest 22-05-2010 07:55:18

Hola Maxium,

fallo mío... No he especificado que la aplicación debe tener acceso desde varios puestos. Solo uno para meter los datos pero con acceso en red para las consultas.

Casimiro Notevi 22-05-2010 12:11:18

Cita:

Empezado por MAXIUM (Mensaje 364988)
ejem....

Leyendo La Cara Oculta de Delphi... o no fue ahí?. La cosa es que las consultas de SQL y todo lo que tenga que ver con SQL, es para cuando quieres hacer una aplicación multiusuario accesible por red a un Servidor. Lo que no implica lo contrario (monousuario y en local).

Al ser monousuario, las consultas con SQL lo harían más lento. en ese caso, usar los componentes de TTable y/o TDBNavigator, etc.

Para nada, monousuario o multiusuario, sql es un lenguaje de consulta a bases de datos, no es más rápido o más lento por usarlo monousuario o multiusuario, no tiene nada que ver.

Casimiro Notevi 22-05-2010 12:13:43

Cita:

Empezado por Delphitest (Mensaje 364986)
Muchas gracias por vuestras aportaciones.
Crea que me decanto por PostgreSQL o al menos voy a intentarlo.
Ya lo he instalado y enlazado con parte del programa.
Un saludo

Excelente decisión, no te arrepentirás, ahora puedes hacer aplicaciones para acceder a pequeñas y a enormes bases de datos, alojarlas en cualquier servidor con cualquier sistema operativo, ligera, potente, escalable desde un simple PC hasta los sistemas más grandes que puedas imaginar.

Delphius 22-05-2010 17:50:08

Si me lo permiten, quisiera hacer una pequeña acotación:
El título Opiniones acerca del uso de SQL no es lo más adecuado. Por empezar a lo primero que se viene a la cabeza es un debate de si utilizar o no el LENGUAJE SQL.

A lo que voy es que SQL es un lenguaje, la pregunta debería haber sido, opiniones acerca del uso de motores (o Sistemas de gestión, si prefieren) que éstos hagan uso (obligadamente, ya que es estandar) de SQL es OTRA COSA.

Enferma que se "abrevie" el nombre de algunos motores por el simple hecho de llevar SQL dentro de éste. ¡Por favor! No confundir SQL con MS SQL Server, o PostreSQL o MySQL.

Saludos,

rgstuamigo 22-05-2010 18:57:17

Cita:

Empezado por Delphius (Mensaje 365025)
Si me lo permiten, quisiera hacer una pequeña acotación:
El título Opiniones acerca del uso de SQL no es lo más adecuado. Por empezar a lo primero que se viene a la cabeza es un debate de si utilizar o no el LENGUAJE SQL.

A lo que voy es que SQL es un lenguaje, la pregunta debería haber sido, opiniones acerca del uso de motores (o Sistemas de gestión, si prefieren) que éstos hagan uso (obligadamente, ya que es estandar) de SQL es OTRA COSA.

Enferma que se "abrevie" el nombre de algunos motores por el simple hecho de llevar SQL dentro de éste. ¡Por favor! No confundir SQL con MS SQL Server, o PostreSQL o MySQL.

Saludos,

Eso mismo iba a decir yo, pues veo que mucha gente utiliza el término "SQL" para refereirse "MS SQL Server", lo cual es totalmente erroneo.:mad:
SQL es un lenguaje formal declarativo, estandarizado ISO, para manipular información en una base de datos.
Pero MS SQL Server es un sistema para la gestión de bases de datos producido por Microsoft.
Como pueden ver son dos cosas distintas;). Ahora la cosa es que la mayoría de los servidores de bases de datos utilizan la sintaxis del estandar SQL.;).
Por favor no confundir...;).
Saludos...:)

Casimiro Notevi 22-05-2010 19:00:44

Es un truco de microsoft y su "sql server" para confundir, y que se piense que es su programa el único "sql" server

Edito: no había visto lo escrito por rgstuamigo, pues eso, que le doy la razón.

Neftali [Germán.Estévez] 22-05-2010 20:42:37

Cita:

Empezado por duilioisola (Mensaje 364877)
MSSQLServer: no he estudiado la licencia, pero me sorprendería enterarme de que es gratuita para uso comercial.

Si no recuerdo mal, la versión Express se puede usar sin limitaciones (en cuanto al tipo de aplicación se refiere).

Neftali [Germán.Estévez] 22-05-2010 20:47:39

Cita:

Empezado por Delphitest (Mensaje 364876)
En este caso y tambien con ánimo de aprender me interesa usar SQL, la duda que tengo es con qué servidor.

El único tema que comentas es la gratuidad, y posiblemente, aunque importante, deberías también tener en cuenta (y comentarnos a nosotros) otros aspectos y necesidades de tu proyecto.

¿Monousuario-Multiusuario? ¿Multiplataforma?

¿Porqué lazarus? ¿Estás pensando en multiplataforma? En un caso así deberías desestimar SQL Server. ¿Acceso desde internet? ...


La franja horaria es GMT +2. Ahora son las 15:06: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