刚才试图搞mysql的存储过程,被郁闷了一回,最简单的存储过程,只要加上begin 和end就有莫名其妙的错误。
比如
CREATE PROCEDURE p()
BEGIN
SELECT * FROM T;
END;
够简单了吧?就是报错,其实是分号的问题,说的正规点叫分隔符。
应该这样
1. delimiter //
2. CREATE PROCEDURE p()
3. BEGIN
4. SELECT * FROM T;
5. END//
6.
7. delimiter ;
第一行把分隔符改成双杠,这样到中间 FROM T的时候mysql不会认为SQL命令已经结束了;
第七行把分隔符再改回来,不然以后不习惯。