DELIMITER $$
CREATE OR REPLACE DEFINER=`vn`@`localhost` FUNCTION `vn`.`validationCode`(vString VARCHAR(255))
	RETURNS int(11)
	DETERMINISTIC
BEGIN

	DECLARE vSeed DOUBLE DEFAULT 0;
    DECLARE vCode INT;
    DECLARE vLength INT;
	DECLARE vChar INT;

	SET vLength = length(vString);
    
    WHILE vLength > 0 DO
    
		SET vChar = MID(vString,vLength,1);
        
		SET vSeed = vSeed + ASCII(vChar);
        
		SET vLength = vLength - 1;
    
    END WHILE;

	SET vCode = FLOOR(SQRT(vSeed)*1000000) mod 1000;

	RETURN vCode;
    
END$$
DELIMITER ;