FUNCTION `sp_dec2hex`( IN xvalue BIGINT ) RETURNS CHAR(16); /* Funkce pro převod desítkové na šestnáctkovou, přidán xtemp protože jinak SUBSTRING nejde s bigintem dohromady maximum dec: 9223372036854775807 hex: 7FFFFFFFFFFFFFFF */ BEGIN DECLARE xseq CHAR(16); DECLARE xresult CHAR(16); DECLARE xdigit CHAR(1); DECLARE xtemp smallint; SET xseq = "0123456789ABCDEF"; SET xtemp = (xvalue mod 16)+1; SET xresult = SUBSTRING(xseq FROM xtemp FOR 1); WHILE xvalue > 0 DO SET xtemp = (((xvalue DIV 16) MOD 16)+1); SET xdigit = SUBSTRING(xseq from xtemp FOR 1); SET xvalue = xvalue DIV 16; IF xvalue <> 0 THEN SET xresult = xdigit + xresult; END IF; END WHILE; RETURN xresult; END