mysql 存储过程笔记

1.在命令中应设置分隔符。
2.有输入输出参数要标明,应以begin开始,end 加分隔符结束。
3.参数、变量均不能和列名一样。就算有大小写区分也不行。
简单例子如下:

DELIMITER //

Create PROCEDURE sp_GetTeacherByCornet ( in CORNET int(11) )
BEGIN
Select t.Id,t.Exceptionid,dept.name,t.name,t.cornet,t.pass
FROM teacher t,department dept
Where  t.Exceptionid = dept.Id AND t.cornet LIKE CONCAT('%',CORNET,'%');
END //

带循环的例子:

DELIMITER //

Create PROCEDURE sp_InsertID ( in IMAGE_ID_START int(11), in IMAGE_ID_END int(11),in TAG_ID int(11))
BEGIN DECLARE i INTEGER;
SET i=IMAGE_ID_START;
WHILE i<=IMAGE_ID_END DO BEGIN
Insert piwigo_image_tag(image_id,tag_id) VALUES(i,TAG_ID);
SET i=i+1;
END;
END WHILE;
END//

执行存储过程:
call sp_InsertID(1,5)

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据