Cuál es la diferencia entre SQL y MySQL

Vi esta pregunta en un grupo de Facebook:

Buen día, estoy interesado en aprender bases de datos, qué me recomiendan estudiar: sql o mysql?

Claramente este amigo está algo confundido y, como imagino que debe haber otros preguntándose lo mismo (o algo similar), me parece que vale la pena aclarar un poco los tantos 🙂

Qué es SQL

SQL es un lenguaje de programación diseñado especialmente para trabajar con bases de datos relacionales.

Las siglas SQL significan Structured Query Language (Lenguaje estructurado de consultas).

Una aclaración importante: la palabra «consulta» en español es sinónimo de pregunta o cuestionamiento… en el caso de las bases de datos (las relacionales al menos), cualquier operación (alta, baja, modificación o lectura) se denomina consulta.

El lenguaje SQL fue inventado alrededor de la década de 1970 (algo que, en informática, es prácticamente la pre-historia) para trabajar con este concepto novedoso para la época que eran las bases de datos relacionales.

Si bien ha habido muchos intentos de superar a SQL (Por ejemplo las bases de datos no relacionales), lo cierto es que sigue tan vigente como el primer día. Y eso, en informática es decir MUCHO.

Uno de los detalles más interesantes que tiene SQL es que plantea un modo de pensar bastante diferente del que estamos acostumbrados al usar un lenguaje común (PHP, Python, Java o cualquier otro similar): SQL es un lenguaje declarativo.

Eso significa que, cuando escribimos código SQL la pregunta que debemos responder es Qué, en lugar de Cómo (a lo que estamos acostumbrados).

En cierta medida, SQL funciona como el genio de la lámpara de Aladino. Nosotros sólo tenemos que expresar nuestros deseos y el genio se encargará de hacerlos realidad…

Claro que, si no estamos bien seguros de lo que deseamos… podemos terminar como el Rey Midas :).

Una de las operaciones más usuales que se realizan escribiendo código SQL es traer información de la base de datos (Algo como: «Quiero saber todos los datos de los alumnos que cursan Introducción a PHP«).

Por si te quedaste con las ganas, acá está algo más detallada la historia de SQL.

Qué es MySQL

MySQL es un Sistema Gestor de Bases de Datos (SGBD o DBMS en Inglés).

Se trata pues de una aplicación (o bueno, podríamos pensar en un conjunto de aplicaciones en realidad… como mínimo el cliente y el servidor) que permite crear y manipular bases de datos relacionales.

Su característica principal es que se trata de un software de código abierto.

Existen otros motores de bases de datos (SQL Server, Oracle, PostgreSQL, etc…), cada uno con sus particularidades.

Lo que todos comparten es el uso del lenguaje SQL para la interacción con los datos que almacenan.

Conclusión

Ahora sí entonces, es bastante claro (¡Espero!) el tema: SQL es un lenguaje, MySQL es una aplicación. Si bien comparten una parte de su nombre (¡Lo cual no es para nada casual!), son dos cosas completamente diferentes.

Respondiendo a la pregunta que dio origen a este artículo: lo primero que deberías estudiar es SQL, después, si querés podés especializarte en MySQL o cualquier otro motor.

Y lo que yo te recomendaría es que primero que nada estudies bien diseño de bases de datos relacionales.

Si ya conoces SQL y quieres conocer específicamente sobre MySQL este curso puede serte útil.

mchojrin

Por mchojrin

Ayudo a desarrolladores PHP a acceder mercados y clientes más sofisticados y exigentes

¿Te quedó alguna duda? Publica aca tu pregunta

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.