MySQL – Seleccionando la base de datos por defecto

En Creación de nuestra primera base de datos en MySQL aprendimos a crear bases de datos, contenedores en los que almacenaríamos después las tablas y otras estructuras características. Para ello disponíamos, como vimos, del comando CREATE DATABASE, seguido del nombre de la base de datos de nueva creación.

CREATE DATABASE biblioteca;

Con este comando creamos la base de datos biblioteca, que íbamos a destinar al almacenaje de todo lo relacionado con nuestra colección de libros.

Presentamos también el comando SHOW DATABASES, que nos mostraba una lista con todas las bases de datos existentes.

Estamos pues, en condiciones de empezar a diseñar la estructura de la primera tabla. Pero antes es necesario realizar un paso previo: seleccionar cuál es la base de datos por defecto.

En una situación típica, SHOW DATABASES nos mostrará unas cuantas bases de datos. A la hora de crear objetos, como las tablas, introducir datos, o realizar consultas, deberemos tener muy claro sobre qué base de datos, de todas las disponibles, vamos a realizar esas operaciones.

Para ello, elegimos una base de datos por defecto con el comando USE.

mysql> USE biblioteca;
Database changed

A partir de este momento, todas las operaciones que realicemos serán sobre biblioteca.

A título de ejemplo, veamos las tablas existentes con el comando SHOW TABLES:

mysql> SHOW TABLES;
Empty set (0.00 sec)

No hay nada, como era de esperar, pues aún no hemos creado ninguna tabla.

Cuando te canses de manipular en biblioteca, puedes dirigir las miras hacia otra base de datos empleando el mismo comando USE. Prueba a elegir ahora una de las bases de datos del sistema, como information_schema, que seguro que está más repleta de tablas.

mysql> USE information_schema;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed

Hemos conmutado a la base de datos information_schema. Todas las operaciones que realicemos ahora serán sobre ella, en vez de en biblioteca. Mostremos las tablas existentes:

mysql> SHOW TABLES;
+---------------------------------------+
| Tables_in_information_schema          |
+---------------------------------------+
| CHARACTER_SETS                        |
| COLLATIONS                            |
| COLLATION_CHARACTER_SET_APPLICABILITY |
| COLUMNS                               |
| COLUMN_PRIVILEGES                     |
| ENGINES                               |
| EVENTS                                |
| FILES                                 |
| GLOBAL_STATUS                         |
| GLOBAL_VARIABLES                      |
| KEY_COLUMN_USAGE                      |
| PARAMETERS                            |
| PARTITIONS                            |
| PLUGINS                               |
| PROCESSLIST                           |
| PROFILING                             |
| REFERENTIAL_CONSTRAINTS               |
| ROUTINES                              |
| SCHEMATA                              |
| SCHEMA_PRIVILEGES                     |
| SESSION_STATUS                        |
| SESSION_VARIABLES                     |
| STATISTICS                            |
| TABLES                                |
| TABLESPACES                           |
| TABLE_CONSTRAINTS                     |
| TABLE_PRIVILEGES                      |
| TRIGGERS                              |
| USER_PRIVILEGES                       |
| VIEWS                                 |
| INNODB_CMP_RESET                      |
| INNODB_TRX                            |
| INNODB_CMPMEM_RESET                   |
| INNODB_LOCK_WAITS                     |
| INNODB_CMPMEM                         |
| INNODB_CMP                            |
| INNODB_LOCKS                          |
+---------------------------------------+
37 rows in set (0.00 sec)

Conmutemos ahora a la base de datos discos:

mysql> USE discos;
ERROR 1049 (42000): Unknown database 'discos'

¿Qué esperabas? No puedes usar una base de datos inexistente. Deberías haberla creado previamente con CREATE DATABASE discos;

Más adelante veremos que, a pesar de que hayamos elegido una base de datos concreta con USE, existen mecanismos que nos permiten referenciar objetos de otra diferente. Pero por el momento quédate con la idea fundamental de este artículo: antes de empezar a operar sobre una base de datos es necesario seleccionarla con USE.

Javier Montero Gabarró


MySQL – Seleccionando la base de datos por defecto


El texto de este artículo se encuentra sometido a una licencia Creative Commons del tipo CC-BY-NC-ND (reconocimiento, no comercial, sin obra derivada, 3.0 unported)


El Club del Autodidacta

Deja un comentario

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.plugin cookies

ACEPTAR
Aviso de cookies