MySQLでは、DATABASE()
は、デフォルトの(現在の)データベース名を返す組み込み関数です。
結果は、utf8
に文字列として返されます キャラクターセット。デフォルトのデータベースがない場合は、NULL
を返します。 。
構文
構文は次のようになります:
DATABASE()
引数は必要ありません。
例
デモンストレーションの例を次に示します。
SELECT DATABASE();
結果の例:
+------------+ | DATABASE() | +------------+ | NULL | +------------+
この場合、現在のデータベースがないため、結果はNULL
になります。 。
データベースに切り替えましょう:
USE sakila;
そしてもう一度実行します:
SELECT DATABASE();
結果:
+------------+ | DATABASE() | +------------+ | sakila | +------------+
引数は受け入れられません
DATABASE()
に引数を渡す エラーが発生します:
SELECT DATABASE(oops);
結果:
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
保存されたルーチン
ストアドルーチン(ストアドプロシージャ、ストアド関数など)内では、デフォルトのデータベースはルーチンが関連付けられているデータベースであり、呼び出し元のコンテキストでデフォルトになっているデータベースと必ずしも同じではありません。
同義語
SCHEMA()
関数はDATABASE()
の同義語です 機能。