一、新建存储过程 由于mysql默认以;为分隔符,该分隔符会使mysql自动执行sql语句,故须要将分隔符修改下,下面经过DELIMITER设为$$,而后编写SQL,编写完成再将分隔符改回来。(注:若是有VARCHAR类型的参数,必定要写长度,不然会报错) 由于具体的存储过程根据业务和需求而不一样,复杂一些的存储过程甚至须要作异常处理,这里只举一个简单的例子,一个输入,一个输出:mysql
DELIMITER $$ CREATE PROCEDURE query_company(IN cname_in VARCHAR(100), OUT result_out INT) BEGIN SELECT count(*) INTO result_out FROM oasys_dept where dept_name like CONCAT('%', cname_in, '%'); END $$ DELIMITER ;
二、调用存储过程:sql
SET @cname='公司'; SET @ret=0; CALL query_company(@cname, @ret); select @ret;
三、修改存储过程 MySQL彷佛不支持修改存储过程,建议删除后新建。code
四、删除存储过程 DROP PROCEDURE query_company;select