mariadb函数中未声明的变量compid



我试图创建一个函数,通过电话号码(varchar(获取公司id

CREATE OR REPLACE FUNCTION getIdByPhone (cp CHAR(255))
RETURNS  INT
BEGIN 
SELECT id into compid 
FROM companies 
WHERE comp_phone1=cp;
RETURN compid;
END;

并且有错误:

Undeclared variable: compid

错误消息试图告诉您。您需要先declare变量,然后才能分配给它:

delimiter //
create function getidbyphone (cp char(255))
returns int
deterministic
begin 
declare compid int;
select id into compid from companies where comp_phone1 = cp;
return compid;
end
//
delimiter;

这是一个关于DB Fiddle的演示

最新更新