create procedure update_keyoffice(out p_key varchar(30),out p_hostname varchar(30))
begin
declare p_keyoff varchar(30);
select keyoff into p_keyoff from masterpc where keyoffice = p_key;
if(p_keyoff = p_key) then
insert into keyofficehistory (id,keyoff,hostname,datecreate) values
(null,p_key,p_hostname,now())
end if
end
错误
SQL查询:
CREATE PROCEDURE update_keyoffice(输出p_key varchar(30),out p_hostname varchar(30))BEGIN DECLARE p_keyoff varchar(30);
MySQL说:文档
#1064 - 您的SQL语法出错;检查与MySQL服务器版本对应的手册,以获得正确的语法 靠近''第3行
答案 0 :(得分:0)
在定义存储过程和触发器时,您必须使用自定义delimiter
,它似乎在您的代码中缺失。
更改您的代码如下:
delimiter //
-- your stored procedure code here
-- but don't forget to use new delimiter after end statement
end; //
-- now reset delimiter
delimiter ;