declare myparam int default 100;
报错ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'declare @i int' at line 1
那位大神帮忙解答一下
这是一个自定义函数的例子 ,希望对有帮助,我这里暂没找到自己写的存储过程例子,楼主可以百度下,应该挺多的。
DELIMITER $$
DROP FUNCTION IF EXISTS `func_split_string_to_other`$$
CREATE FUNCTION `func_split_string_to_other`(v_str varchar(100),v_desc varchar(100)) RETURNS varchar(100) CHARSET utf8
BEGIN
DECLARE i int(4);
DECLARE id1 INT DEFAULT 0;
DECLARE temp varchar(100);
DECLARE returnStr varchar(100);
set i = 1;
if(v_str is null or LENGTH(v_str)=0) then
return 'error';
else
while i<= 1+(LENGTH(v_str) - LENGTH(replace(v_str,v_desc,'')))
do
SELECT id INTO id1 FROM tb_dep WHERE name=REVERSE(SUBSTRING_INDEX(REVERSE(SUBSTRING_INDEX(v_str, v_desc, i)), v_desc, 1));
IF(returnStr IS NULL) THEN
set returnStr=id1;
ELSE
SET temp=returnStr;
set returnStr= CONCAT(temp,v_desc,id1);
END IF;
set i = i+1;
end while;
return returnStr;
end if;
END$$
DELIMITER ;
哥,我没接您的意思。。。。语法错误在'declare @i int附近,您贴了declare myparam int default 100这个干瘪的一小块,好像看不出来啊!能把语句贴多点吗?