mysql的语法错误
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;
END
END$$
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里执行第一个函数提示有语法错误,请高手帮忙找一下错误!!!
------解决方案--------------------
你应该发到
php
或者
mysql版
------解决方案--------------------把赋值语句都改成set x = (xxx)这样的看下呢