In MySQL das SCHEMA()
Funktion ist ein Synonym für DATABASE()
Funktion. Es gibt den standardmäßigen (aktuellen) Datenbanknamen zurück.
Das Ergebnis wird als String im utf8
zurückgegeben Zeichensatz. Wenn es keine Standarddatenbank gibt, wird NULL
zurückgegeben .
Syntax
Die Syntax lautet wie folgt:
SCHEMA()
Es sind keine Argumente erforderlich oder akzeptiert.
Beispiel
Hier ist ein Beispiel zur Veranschaulichung:
SELECT SCHEMA();
Hier ist das Ergebnis in meinem Terminalfenster:
+----------+ | SCHEMA() | +----------+ | NULL | +----------+
In diesem Fall habe ich keine aktuelle Datenbank und daher ist das Ergebnis NULL
.
Wechseln wir zu einer Datenbank:
USE world;
Und erneut ausführen:
SELECT SCHEMA();
Ergebnis:
+----------+ | SCHEMA() | +----------+ | world | +----------+
Es werden keine Argumente akzeptiert
Übergabe beliebiger Argumente an SCHEMA()
führt zu einem Fehler:
SELECT SCHEMA(wrong);
Ergebnis:
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
Gespeicherte Routinen
Innerhalb einer gespeicherten Routine (z. B. einer gespeicherten Prozedur, einer gespeicherten Funktion usw.) ist die Standarddatenbank die Datenbank, der die Routine zugeordnet ist, die nicht unbedingt mit der Datenbank identisch ist, die im aufrufenden Kontext die Standarddatenbank ist