如何编写用于在mysql中创建存储过程的查询
答案 0 :(得分:2)
创建存储过程的一个非常简单的方法是使用MySQL Query Browser之类的东西。我一直使用这个工具来编写存储过程和函数。
使用该工具,您可以执行以下操作:
右键单击要在其中创建proc / func的Schemata选项卡中的数据库。
选择“创建新的存储过程/功能”或键入CTRL-P。
输入程序/功能的名称。
点击创建程序或创建功能按钮。
这将创建一个骨架存储过程或函数,其中包含为您编写的所有DELIMITER和DROP PROCEDURE / DROP FUNCTION行。如果需要,你可以调整它们,但我通常不需要这样做。
然后你可以充实proc / func并点击执行,假设你没有语法错误,你就有了一个存储过程。
它生成的骨架存储过程如下所示:
DELIMITER $$
DROP PROCEDURE IF EXISTS `database-name`.`proc-name` $$
CREATE PROCEDURE `database-name`.`proc-name` ()
BEGIN
END $$
DELIMITER ;
希望有所帮助。
注意:按钮文本和提示可能会在工具版本之间略有不同,但在其他方面的工作方式相同。
答案 1 :(得分:1)
答案 2 :(得分:1)
DELIMITER $$
CREATE PROCEDURE prc_filler (cnt INT)
BEGIN
SELECT name
FROM data;
END
$$
DELIMITER ;
答案 3 :(得分:0)
一些简单的例子:
delimiter ;
drop procedure if exists get_user;
delimiter #
create procedure get_user
(
in p_user_id int unsigned
)
begin
select * from users where user_id = p_user_id;
end #
delimiter ;
drop procedure if exists list_users;
delimiter #
create procedure list_users()
begin
select * from users order by username;
end #
delimiter ;