Хорошо, я нашел решение:
USER ()
[EDIT]
Внимание:
MySQL сохраняет значения user
и host
в сопоставлении UTF8-BIN после их понижения, а USER()
возвращает без понижения.
Например, USER()
возвращает gqyy@MyTinnyHost-PC.local
, когда MySQL сохранил gqyy
и mytinnyhost-pc.local
описанная здесь проблема ( Ошибка # 60166 ) возникает, когда вы используете SUBSTRING_INDEX()
внутри LOWER()
с возвратом USER()
, хранящимся в определяемая пользователем переменная
Например:
mysql> SET @user_at_host = 'gqyy@mytinyhost-PC.local';
Query OK, 0 rows affected (0,00 sec)
mysql> SELECT LOWER(SUBSTRING_INDEX(@user_at_host, '@', -1));
+------------------------------------------------+
| LOWER(SUBSTRING_INDEX(@user_at_host, '@', -1)) |
+------------------------------------------------+
| mytinyhost-pc. ocal |
+------------------------------------------------+
1 row in set (0,00 sec)