如何使用 PROCEDURE 运行 对 MySQL 进行多次查询?

How to run multiple queries on MySQL using PROCEDURE?

在 MySQL 中为 SQL 进行的多个查询创建 PROCEDURE 的正确方法是什么?

CREATE OR REPLACE PROCEDURE foo
IS
BEGIN
  -- The create sentence goes here. For example:
  -- EXECUTE IMMEDIATE
  -- 'CREATE TABLE bar (...)';

  -- The update sentence goes here
  -- EXECUTE IMMEDIATE
  -- 'UPDATE bar SET ...';

  -- The drop/delete sentence goes here.
  -- EXECUTE IMMEDIATE
  -- 'DROP TABLE bar;'
END;
CREATE PROCEDURE foo 
    @LastName nvarchar(50), 
    @FirstName nvarchar(50) 
AS 
    QUERY1; -- SELECT or whatever
    QUERY2;
GO

在 MySQL 中只需将 3 个查询插入到您的过程中。您需要之前定义的不同分隔符,否则引擎将在第一个 ; 处终止过程定义,这会使它不完整。因此,更改为 $//

等其他任何内容
DELIMITER //
CREATE PROCEDURE your_proc()
BEGIN
  create ... ;
  update ... ;
  drop ... ;
END //
DELIMITER ;