En MySQL, DATABASE()
es una función integrada que devuelve el nombre de base de datos predeterminado (actual).
El resultado se devuelve como una cadena en el utf8
conjunto de caracteres. Si no hay una base de datos predeterminada, devuelve NULL
.
Sintaxis
La sintaxis es así:
DATABASE()
No se requieren ni se aceptan argumentos.
Ejemplo
Aquí hay un ejemplo para demostrarlo:
SELECT DATABASE();
Resultado de ejemplo:
+------------+ | DATABASE() | +------------+ | NULL | +------------+
En este caso, no tengo una base de datos actual, por lo que el resultado es NULL
.
Cambiemos a una base de datos:
USE sakila;
Y ejecutarlo de nuevo:
SELECT DATABASE();
Resultado:
+------------+ | DATABASE() | +------------+ | sakila | +------------+
No se aceptan argumentos
Pasando argumentos a DATABASE()
da como resultado un error:
SELECT DATABASE(oops);
Resultado:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'oops)' at line 1
Rutinas almacenadas
Dentro de una rutina almacenada (como un procedimiento almacenado, una función almacenada, etc.), la base de datos predeterminada es la base de datos con la que está asociada la rutina, que no es necesariamente la misma que la base de datos predeterminada en el contexto de llamada.
Sinónimo
El SCHEMA()
función es sinónimo de DATABASE()
función.