创建存储过程 

DELIMITER $$ 
-- PROCEDURENAME 存储过程名称
CREATE PROCEDURE PROCEDURENAME ()
BEGIN
-- 存储过程中要执行的sql语句
	SELECT * FROM 表名;
END $$;

DELIMITER;

  创建带有入参的存储过程  (IN 代表的入参(IN 参数名称 参数类型))

DELIMITER $$
	CREATE PROCEDURE 存储过程名称(IN in_dept_code VARCHAR(32) , IN IN_ID LONG)
	BEGIN
		SELECT * FROM 表名 WHERE dept_code = in_dept_code AND ID = IN_ID;
	END $$;
DELIMITER;

 调用有入参的存储过程 ( CALL 存储过程名称(入参...) )

CALL 存储过程名称('224',1448);

创建带有出参的存储过程 

OUT 代表的出参(OUT 参数名称,参数类型)

SET 为 出参赋值

DELIMITER $$
	CREATE PROCEDURE 存储过程名称(IN IN_ID LONG , OUT OUT_COUNT INT)
	BEGIN
			SET OUT_COUNT = (SELECT COUNT(*) FROM 表名 WHERE ID = IN_ID);
	END $$;
DELIMITER;

调用有返回值的存储过程

CALL ehr_user(1234,@OUT_COUNTNUM);

 删除存储过程

DROP PROCEDURE 存储过程名称;

查看存储过程(其中ROUTINE_DEFINITION为存储过程体)

select * from information_schema.Routines  where routine_name = '存储过程名称';

    

Logo

本社区面向用户介绍CSDN开发云部门内部产品使用和产品迭代功能,产品功能迭代和产品建议更透明和便捷

更多推荐