Error Code: 1630. FUNCTION rand.string does not exist

时间:2022-04-06 17:31:45

1、错误描述

13:50:13	call new_procedure	Error Code: 1630. FUNCTION rand.string does not exist. Check the 'Function Name Parsing and Resolution' section in the Reference Manual	0.046 sec

2、错误原因

CREATE DEFINER=`root`@`localhost` PROCEDURE `new_procedure`()
BEGIN
  set @a=101;
  while @a<2000 do
  set @b = rand.string(10);
  set @c=1;
  insert into example1 values(@a,@b,@c);
  set @a=@a+1;
  if(@a%2=0)
     then
     set @c=0;
     end if;
  end while;
END

在给@b赋值时,用的是@b = rand.string(10),其实是想写个随机字符串存储过程

3、解决办法

CREATE DEFINER=`root`@`localhost` PROCEDURE `new_procedure`()
BEGIN
  set @a=101;
  while @a<2000 do
  set @b = rand_string(10);
  set @c=1;
  insert into example1 values(@a,@b,@c);
  set @a=@a+1;
  if(@a%2=0)
     then
     set @c=0;
     end if;
  end while;
END