DROP FUNCTION IF EXISTS account.user_getMysqlRole; DELIMITER $$ CREATE DEFINER=`root`@`%` FUNCTION `account`.`user_getMysqlRole`(vUserName VARCHAR(255)) RETURNS varchar(255) CHARSET utf8 BEGIN /** * From a username, it returns the associated MySQL wich should be used when * using external authentication systems. * * @param vUserName The user name * @return The associated MySQL role */ DECLARE vRole VARCHAR(255); SELECT CONCAT(IF(r.hasLogin, 'z-', ''), r.name) INTO vRole FROM role r JOIN user u ON u.role = r.id WHERE u.name = vUserName; RETURN vRole; END$$ DELIMITER ;