No MySQL, o
SCHEMA()
função é um sinônimo para o DATABASE()
função. Ele retorna o nome do banco de dados padrão (atual). O resultado é retornado como uma string no
utf8
conjunto de caracteres. Se não houver banco de dados padrão, ele retornará NULL
. Sintaxe
A sintaxe fica assim:
SCHEMA()
Nenhum argumento é necessário ou aceito.
Exemplo
Segue um exemplo para demonstrar:
SELECT SCHEMA();
Aqui está o resultado na minha janela de terminal:
+----------+ | SCHEMA() | +----------+ | NULL | +----------+
Neste caso eu não tenho um banco de dados atual e então o resultado é
NULL
. Vamos mudar para um banco de dados:
USE world;
E execute novamente:
SELECT SCHEMA();
Resultado:
+----------+ | SCHEMA() | +----------+ | world | +----------+
Nenhum argumento é aceito
Passando quaisquer argumentos para
SCHEMA()
resulta em um erro:SELECT SCHEMA(wrong);
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 'wrong)' at line 1
Rotinas armazenadas
Dentro de uma rotina armazenada (como um procedimento armazenado, função armazenada, etc), o banco de dados padrão é o banco de dados ao qual a rotina está associada, que não é necessariamente o mesmo que o banco de dados padrão no contexto de chamada