В MariaDB, USER()
е вградена функция, която връща текущото потребителско име и име на хост на MariaDB, дадени при удостоверяване в MariaDB.
Синтаксис
Синтаксисът е така:
USER()
Не се изискват или приемат аргументи.
Пример
Ето пример за демонстрация:
SELECT USER();
Резултат:
+------------------+ | USER() | +------------------+ | [email protected] | +------------------+
USER()
срещу CURRENT_USER()
USER()
функцията не винаги връща същия резултат като CURRENT_USER()
функция.
Например, ако се свържем с помощта на anonymous
:
mariadb --user="anonymous"
След това стартирайте USER()
и CURRENT_USER()
:
SELECT
USER(),
CURRENT_USER;
Резултат:
+---------------------+--------------+ | USER() | CURRENT_USER | +---------------------+--------------+ | [email protected] | @localhost | +---------------------+--------------+
Не се приемат аргументи
Подаване на всякакви аргументи към USER()
води до грешка:
SELECT USER(123);
Резултат:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '123)' at line 1
Изявления, използващи USER()
функция или един от нейните синоними (SYSTEM_USER()
и SESSION_USER()
) не са безопасни за репликация на ниво израз.