Si estás trabajando en tu primer proyecto web, puede que no entiendas por completo el concepto de una base de datos o qué es MySQL. Las bases de datos son componentes claves de las páginas web dinámicas. MySQL es un sistema (¡no un lenguaje!) que te permite manejar estas bases de datos.
Aunque MySQL no es el único sistema que puedes usar para manejar bases de datos, es el sistema más popular para las aplicaciones web. Si entiendes como funciona MySQL, podrás solucionar una gran cantidad de problemas técnicos en diferentes tipos de páginas web.
En esta guía para principiantes sobre MySQL, te enseñaremos qué son las bases de datos y cómo funciona este sistema. Luego te mostraremos cómo trabajar con MySQL en la vida, realizando acciones básicas dentro de una base de datos. ¡Empecemos!
¿Qué es Una Base de Datos?
Una base de datos es una colección de información organizada en tablas. Si en algún momento has usado una aplicación como Excel, una base de datos puede verse bastante similar:
El propósito de las bases de datos es almacenar información para que sea fácilmente accesible por otras aplicaciones. Por ejemplo, si tienes un sitio web WordPress, este cuenta con una base de datos única. Esta base de datos guarda información como el texto de los artículos de tu sitio web, los datos de los usuarios registrados, sus contraseñas, los plugins que tienes instalados y mucho más:
En cuanto a las aplicaciones web, usamos bases de datos para no almacenar toda esa información crítica en los archivos de las páginas. Como te puedes imaginar, si almacenas los datos privados de tus usuarios en un archivo HTML que cualquier persona pueda acceder, estás exponiendo todos esos datos a un riesgo alto.
El tipo de bases de datos más común con el que te encontrarás se denomina ‘relacional’. Las bases de datos relacionales usan tablas con columnas y filas. Las tablas se relacionan entre sí, usando identificadores únicos, y las aplicaciones pueden acceder a esta información a través de una Application Program Interface o API.
Una API es un software que permite que dos aplicaciones se conecten entre ellas. El API de las bases de datos relacionales se denomina SQL o Structured Query Language. Este es un lenguaje que te permite acceder a la información que necesitas dentro de una base de datos.
Gracias a esta API, una base de datos puede conectarse a múltiples aplicaciones. Por ejemplo, si te registras en la página web de Amazon, también podrás acceder a la misma cuenta usando sus aplicaciones móviles. Sin una base de datos, esto no sería posible.
A estas alturas, todos estos conceptos pueden seguir pareciendo confusos. Por ahora, solo es importante que entiendas que las bases de datos modernas son colecciones de tablas con columnas y filas, cada una conteniendo información. Mientras sigamos ahondando en qué es MySQL y cómo puedes interactuar con las bases de datos, todos estos conceptos dejarán de sonar tan complicados.
¿Qué es MySQL y en Qué Tipos de Servidores Puede Ser Usado?
Como mencionamos anteriormente, MySQL es un sistema de manejo de bases de datos. Cuando creas una página web o configuras un servidor, el tipo de base de datos al que tienes acceso depende de tu proveedor de alojamiento web. DreamHost, por ejemplo, usa bases de datos MySQL:
Si tienes acceso directo a un servidor, puedes instalar el sistema de bases de datos que prefieras. MySQL es la opción preferida por aproximadamente 44% del mercado. Otras alternativas a MySQL incluyen Microsoft SQL Server, MongoDB, Oracle Database y MariaDB.
Cada sistema de manejo de bases de datos ofrece beneficios diferentes. MySQL es la opción más popular en el mercado, ya que es un sistema open source o de código abierto. Esto significa que cualquier persona puede instalar MySQL gratuitamente (o por lo menos algunas versiones) y modificar el código fuente del software a su antojo.
Además de ser un software de código abierto, MySQL usa una versión o sintaxis de SQL que es sencilla de aprender. Usamos la palabra ‘sintaxis’ porque muchos otros sistemas de manejo de base de datos usan versiones diferentes de SQL. Al optar por MySQL y aprender cómo interactuar con estas bases de datos usando SQL, maximizas la cantidad de bases de datos con las que podrás trabajar en la web.
Como si esas ventajas no fueran suficientes, MySQL funciona con la mayoría de los sistemas operativos con los que te puedes cruzar. Puedes instalar MySQL en servidores que usen Windows, Mac OS y la mayoría de las distribuciones de Linux. Estas características en conjunto hacen de MySQL el sistema de manejo de bases de datos más versátil que puedes usar.
¿Qué es SQL?
Antes de ahondar en cómo usar MySQL, es importante que tengas un conocimiento básico de que es SQL y de cómo funciona. Como mencionamos antes, las siglas SQL significan Structured Query Language. SQL te permite usar varios tipos de comandos, que pueden resumirse en las siguientes categorías:
- Solicitudes de datos: Los comandos de solicitud de datos en SQL se conocen como queries (consultas). Estos comandos te permiten solicitar entradas de datos específicas. Aplicaciones externas pueden usar queries para buscar la información que necesitan si tienen acceso a la base de datos.
- Manipulación de datos: Esta clase de comandos te permite agregar información a la base de datos, borrarla, modificarla, u ordenarla. Por ejemplo, si registras un usuario en una página web, esta se conecta con la base de datos para agregar su información en la tabla apropiada.
- Identificación de datos: Estos comandos te permiten ‘definir’ los tipos de datos dentro de las tablas. También puedes usarlos para definir las conexiones entre las tablas.
- Control de acceso de datos: Una base de datos es tan útil como es segura. Con estos comandos puedes modificar quién tiene acceso a la base de datos, tanto como para ver su contenido como para modificarlo.
Cuando hablamos de ‘comandos’, nos referimos a expresiones que utilizan SQL para dar instrucciones específicas a una base de datos. En el caso de MySQL, un comando SQL básico del tipo query podría verse de esta manera:
SELECT * FROM [NOMBRE DE LA TABLA]
Ese comando nos regresaría una lista de todas las columnas que contiene la tabla específica a la que nos referimos. El elemento del asterisco (*), en este caso, significa “La información de todas las columnas”, al ponerlo después de SELECT le estamos diciendo a MySQL que nos muestre esa información.
En la siguiente sección te mostraremos varios ejemplos prácticos de cómo usar SQL en MySQL. También cubriremos otra información útil, como el proceso para crear una base de datos MySQL.
5 Usos Prácticos y Generales de las Bases de Datos MySQL
Ahora que ya sabes qué son y cómo funcionan las bases de datos, es hora de hablar de cómo interactuar con ellas de manera práctica.
1. Establecer Una Conexión con la Base de Datos
La manera más sencilla de establecer una conexión con la base de datos es usando un ‘cliente’. Los clientes de bases de datos son aplicaciones que te permiten acceder y modificar las bases de datos por medio de una interfaz gráfica.
En cuanto a MySQL, algunos de los clientes más populares incluyen MySQL WorkBench, dbForge, dBeaver y phpMyAdmin. Todos estos clientes funcionan con varios tipos de bases de datos, es decir, no se limitan solo a MySQL.
Entre esas opciones, la más popular de los proveedores de alojamiento web suele ser phpMyAdmin. Entonces, si tu proveedor de alojamiento web te da acceso a un panel de control, este probablemente incluya una opción para acceder a phpMyAdmin:
Una vez que accedas a phpMyAdmin a través de tu panel de control, deberás ingresar tus credenciales para la base de datos. Estas credenciales deberían llegarte al momento de crear una página web por medio de tu proveedor de alojamiento web.
Cuando accedas a phpMyAdmin podrás ver todas las bases de datos disponibles al lado izquierdo de tu pantalla:
Ten en cuenta que este menú solo te mostrará las bases de datos a las que tengas acceso con un usuario MySQL en específico. Si aparece vacío es porque no cuentas con ninguna base de datos.
Si no está claro qué cliente usa tu proveedor de alojamiento web para establecer esta conexión, siempre puedes ponerte en contacto con su equipo de soporte para más información. Saber cómo navegar este proceso también es muy útil por si te sale alguna vez el error de ‘estableciendo una conexión con la base de datos’.
2. Crear Una Base de Datos
Si tienes acceso a phpMyAdmin, crear una base de datos es sencillo. Una vez que entras en el panel de phpMyAdmin, navega a la pestaña de ‘Bases de datos’ en el menú superior. La primera opción que aparece en la siguiente página se denomina ‘Crear base de datos’:
Escoge un nombre para la nueva base de datos y selecciona la opción ‘utf8mb4_unicode_ci’ en el menú de la derecha. Ese menú te permite seleccionar el ‘charset’ que usará la base de datos. Es decir, los caracteres como números, letras y símbolos que puede reconocer como datos válidos.
Presiona el botón de crear y está listo. Tu nueva base de datos aparecerá en el menú de la izquierda en phpMyAdmin. Por el momento, esa nueva base de datos está vacía, así que tendrás que agregar tablas y columnas manualmente.
3. Crear Tablas y Agregar Entradas en la Base de Datos
Toda base de datos MySQL está compuesta por tablas y entradas individuales. En este ejemplo, podemos ver algunas de las tablas que componen la base de datos de un sitio web WordPress:
Cada una de esas líneas corresponde a una tabla. Cada tabla contiene un grupo diferente de información. Para un sitio web WordPress, tendrás tablas para los artículos, las páginas, los usuarios y muchos otros elementos.
Para agregar una nueva tabla, dirígete al fondo de la página. Allí encontrarás una opción que lee ‘Crear nueva tabla’. Aquí puedes escoger un nombre para la tabla y cuantas columnas debería contener:
La cantidad de columnas que la tabla contiene dependerá de los datos que quieras almacenar en cada entrada. Por ejemplo, si creas una tabla de usuarios, podrías incluir las siguientes entradas:
- Nombre de usuario
- Contraseña
- Correo electrónico
- Fecha de registro
Si recuerdas el último formulario de registro que llenaste, imagínate que cada uno de esos campos corresponde a una columna diferente en la tabla de una base de datos. Para ver qué información contiene una tabla, haz clic en ella.
En la siguiente página podrás ver que cada entrada corresponde a una fila diferente:
Para agregar una nueva entrada en MySQL necesitas usar el comando SQL insert. Este comando cae bajo la categoría de manipulación de datos. Si usas phpMyAdmin, existen dos maneras de ejecutarlo.
El primer método y el más sencillo es escogiendo la opción Insert en el menú de navegación superior. Si haces clic en Insertar mientras estás viendo una tabla, phpMyAdmin te permitirá agregar una entrada nueva manualmente sin tener que escribir un comando de insert manual:
En este ejemplo, estamos agregando una entrada para una tabla que contiene cuatro columnas. Cada columna corresponde a un grupo de datos diferentes, así que tienen su propio campo. Este proceso funciona justo como rellenar un formulario en línea.
Para agregar una entrada, tienes que ingresar el ‘valor’ de cada campo. Para darte un ejemplo, en el campo de username iría el nombre del usuario nuevo. Una vez que rellenes todos los campos necesarios, puedes hacer clic en Continuar.
En la siguiente página, phpMyAdmin te mostrará el comando SQL que corresponde a la información que rellenaste. He aquí un ejemplo de cómo se ve un comando de SQL insert para agregar una entrada a una tabla:
Durante este paso puedes modificar los valores del comando. Una vez que estés satisfecho, haz clic en ‘Continuar’. Si el comando es válido, la nueva entrada aparecerá en la tabla que hayas seleccionado.
El segundo método para agregar una entrada a una tabla es usando la pestaña de SQL ubicada en el menú superior. Si accedes a esta ventana verás un editor donde puedes escribir consultas SQL y ejecutarlas. En la próxima sección te mostraremos cómo ejecutar algunos otros tipos de consultas.
4. Ejecutar Consultas de select, update y delete
Ahora que ya sabes cómo ejecutar una consulta de insert, veamos otros tipos de comandos de SQL que puedes usar en una base de datos MySQL. Comencemos por las consultas select.
Una consulta select equivale a preguntarle a la base de datos “Existe alguna columna que concuerde con los siguientes valores?”. Por ejemplo, este comando select busca columnas donde el valor en el campo de ID corresponda a 1:
SELECT * FROM `user` WHERE `ID` = '1';
Si existe alguna columna que corresponda con la consulta, phpMyAdmin regresará una lista con esa información.
Para modificar los valores de una columna, puedes usar la consulta update. He aquí un ejemplo de cómo se vería una consulta update para modificar los valores de una tabla de usuarios:
UPDATE `user` SET `id`='[value-1]',`username`='[value-2]',`password`='[value-3]',`date created`='[value-4]' WHERE `ID` = '1';
Este ejemplo posee dos componentes. La sección de UPDATE incluye los datos nuevos que sobreescriben los anteriores. La sección de WHERE indica los valores que tienen que cumplirse para que la consulta funcione.
En esencia, una función de update le dice a la base de datos MySQL, “Sustituye los valores existentes por estos para las columnas que cumplan con estas condiciones”. Las condiciones dependen de tu elección.
Finalmente, si deseas borrar una o más columnas de una tabla, tendrás que usar la consulta delete. Una consulta delete se ve de esta manera:
DELETE FROM `user` WHERE `username` = `johndoe`
Esta consulta aplica a una tabla específica (user) y le dice a la base de datos que borre las entradas que tengan el nombre de usuario “johndoe”. Si existe alguna entrada que corresponda con esa información, desaparecerá de la base de datos.
A la hora de borrar entradas, es esencial que entiendas que no podrás recuperar esos datos a menos que tengas respaldos de la base de datos. Por eso te recomendamos solo eliminar entradas si estás seguro de que ya no necesitas la información.
Empieza a Usar Bases de Datos MySQL
Entender cómo funcionan las bases de datos es un paso clave para comprender mejor los sitios web y las aplicaciones modernas. La gran mayoría de las páginas que visitas usan bases de datos y estadísticamente hablando, probablemente usen MySQL. Si tienes un sitio WordPress, este también tiene su propia base de datos.
Modificar una base de datos MySQL es relativamente sencillo si conoces SQL. Incluso si prefieres no usar el lenguaje, tu proveedor de alojamiento web probablemente te dé acceso a herramientas como phpMyAdmin que puedas usar para administrar bases de datos MySQL manualmente.
Todos nuestros planes de alojamiento web te permiten crear y acceder a las bases de datos. Si utilizas alguno de ellos con WordPress preinstalado, nosotros nos encargaremos de crear la base de datos de tu página web. ¡De esa manera, puedes empezar a usar WordPress instantáneamente!
Impulsa Tu Sitio con DreamHost
Nos aseguramos de que tu sitio sea rápido, seguro y esté siempre en línea, para que tus visitantes confíen en ti. Encuentra planes desde $1.99 USD/mes.