SQL Antes de empezar
Preparar el ordenador
Para practicar SQL usaremos DBeaver, un programa gratuito para crear bases de datos, ver sus tablas y lanzar consultas, y SQLite, una base de datos que se guarda entera en un solo fichero. En los ordenadores del aula de Codemaker ya está instalado.
1. Instalar DBeaver#
- Entra en dbeaver.io/download.
- Descarga DBeaver Community (la gratuita) para tu sistema.
- Instálalo con las opciones que vienen marcadas.
2. Crear la base de datos#
- Abre DBeaver y ve a Base de datos → Nueva conexión (en inglés, Database → New Database Connection).
- Elige SQLite y pulsa Siguiente.
- En Path, pulsa Create…, elige una carpeta y escribe el nombre del fichero:
codemaker.db. - Pulsa Finalizar. La primera vez, DBeaver te pedirá descargar el driver de SQLite: acepta (hace falta conexión a internet).
La base de datos aparece a la izquierda, en el navegador de bases de datos. Al desplegarla verás sus tablas (al principio, ninguna).
3. Escribir y ejecutar SQL#
Con la base de datos seleccionada, abre un editor de SQL con SQL Editor → New SQL script, o con Ctrl + ]. Ahí escribes el código y lo ejecutas:
| Atajo | Qué hace |
|---|---|
Ctrl + Enter | Ejecuta la instrucción en la que está el cursor |
Alt + X | Ejecuta todo el script, una instrucción detrás de otra |
F5 sobre la base de datos (en el navegador) | Refresca la lista de tablas, para ver las que acabas de crear |
Los resultados de un SELECT salen debajo del editor, en forma de tabla.
Consejo
Separa cada instrucción con su ; al final. Si ejecutas con Ctrl + Enter y no pasa lo que esperabas, comprueba que el cursor está dentro de la instrucción que querías.
4. Para el tema de Java#
Para usar la base de datos desde un programa de Java (el último tema), necesitas además el entorno de Java preparado: mira Preparar el ordenador en los apuntes de Java.
SQLite y MySQL#
En estos apuntes trabajamos con SQLite, pero en algunos ejemplos verás dos pestañas: SQLite y MySQL. MySQL es una de las bases de datos de servidor más usadas del mundo, y el SQL es casi el mismo: solo cambian algunos detalles, como los tipos de datos. Así, cuando trabajes con un servidor de verdad, sabrás qué cambiar.
Problemas frecuentes#
| Problema | Solución |
|---|---|
| No veo la tabla que acabo de crear | Selecciona la base de datos en el navegador y pulsa F5 |
no such table: alumnos | El script está conectado a otra base de datos, o la tabla no se creó. Arriba del editor se ve a qué base de datos está conectado |
| Las claves foráneas no funcionan | En SQLite hay que activarlas en cada sesión con PRAGMA foreign_keys = ON; (lo verás en el tema de tablas relacionadas) |