I MySQL, SCHEMA()
funktion är en synonym för DATABASE()
fungera. Det returnerar standarddatabasnamnet (nuvarande).
Resultatet returneras som en sträng i utf8
teckenuppsättning. Om det inte finns någon standarddatabas returnerar den NULL
.
Syntax
Syntaxen ser ut så här:
SCHEMA()
Inga argument krävs eller accepteras.
Exempel
Här är ett exempel att visa:
SELECT SCHEMA();
Här är resultatet i mitt terminalfönster:
+----------+ | SCHEMA() | +----------+ | NULL | +----------+
I det här fallet har jag inte en aktuell databas och så resultatet är NULL
.
Låt oss byta till en databas:
USE world;
Och kör det igen:
SELECT SCHEMA();
Resultat:
+----------+ | SCHEMA() | +----------+ | world | +----------+
Inga argument accepteras
Skickar eventuella argument till SCHEMA()
resulterar i ett fel:
SELECT SCHEMA(wrong);
Resultat:
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
Lagrade rutiner
Inom en lagrad rutin (som en lagrad procedur, lagrad funktion, etc.) är standarddatabasen den databas som rutinen är associerad med, vilket inte nödvändigtvis är samma som databasen som är standard i anropssammanhanget