sql >> Database teknologi >  >> RDS >> Mysql

DATABASE() – Hent det aktuelle databasenavn i MySQL

I MySQL, DATABASE() er en indbygget funktion, der returnerer standarddatabasenavnet (nuværende).

Resultatet returneres som en streng i utf8 tegnsæt. Hvis der ikke er nogen standarddatabase, returnerer den NULL .

Syntaks

Syntaksen ser sådan ud:

DATABASE()

Ingen argumenter er påkrævet eller accepteret.

Eksempel

Her er et eksempel til demonstration:

SELECT DATABASE();

Eksempelresultat:

+------------+
| DATABASE() |
+------------+
| NULL       |
+------------+

I dette tilfælde har jeg ikke en aktuel database, så resultatet er NULL .

Lad os skifte til en database:

USE sakila;

Og kør det igen:

SELECT DATABASE();

Resultat:

+------------+
| DATABASE() |
+------------+
| sakila     |
+------------+

Ingen argumenter accepteres

Sender argumenter til DATABASE() resulterer i en fejl:

SELECT DATABASE(oops);

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 'oops)' at line 1

Gemmede rutiner

Inden for en lagret rutine (såsom en lagret procedure, lagret funktion osv.) er standarddatabasen den database, som rutinen er knyttet til, hvilket ikke nødvendigvis er det samme som den database, der er standard i den kaldende kontekst.

Synonym

SCHEMA() funktion er et synonym for DATABASE() funktion.


  1. Fremskynder rækkeoptællingen i MySQL

  2. Oracle. Hvordan udskriver du dato og klokkeslæt?

  3. MySQL:Vis med underforespørgsel i FROM-klausulens begrænsning

  4. Brug af Substr med Instr til at udtrække en streng i Oracle