DELIMITER $$CREATE FUNCTION createnames()
RETURNS VARCHAR(20);
BEGIN
DECLARE a,b,c INT;
DECLARE val,aaa,bbb,ccc VARCHAR(20);

SELECT createindex() INTO a;
SELECT createindex() INTO b;
SELECT createindex() INTO c;

SELECT aaa:=NCHAR(CAST(19968+a  AS   INT));
SELECT bbb:=NCHAR(CAST(19968+b  AS   INT));
SELECT ccc:=NCHAR(CAST(19968+c  AS   INT)); SET val=CONVERT( VARCHAR(20),aaa+bbb+ccc );

RETURN val;
ENDEND$$
createindex() 函数如下
DELIMITER $$USE `test`$$DROP FUNCTION IF EXISTS `createindex`$$CREATE DEFINER=`root`@`localhost` FUNCTION `createindex`() RETURNS INT(11)
BEGIN
DECLARE c INT;
SET c=RAND()*20902;
IF (c<40870) THEN
RETURN (c);
END IF;
END$$DELIMITER ;在mysql里执行第一个函数提示有语法错误,请高手帮忙找一下错误!!!