如何在 Mysql 中更改存储过程。
DROP PROCEDURE IF EXISTS sp_Country_UPDATE;
CREATE PROCEDURE sp_Country_UPDATE
( IN p_CountryId int,
IN p_CountryName nvarchar(25),
IN p_CountryDescription nvarchar(25),
IN p_IsActive bit,
IN p_IsDeleted bit )
UPDATE
Country
SET
CountryName = p_CountryName ,
CountryDescription=p_CountryDescription,
IsActive= p_IsActive,
IsDeleted=p_IsDeleted
WHERE
CountryId = p_CountryId ;
如何修改这个存储过程?
最佳答案
如果你的意思是你想编辑程序,那么你不能根据 MySQL 文档:
This statement can be used to change the characteristics of a stored procedure. More than one change may be specified in an ALTER PROCEDURE statement. However, you cannot change the parameters or body of a stored procedure using this statement; to make such changes, you must drop and re-create the procedure using DROP PROCEDURE and CREATE PROCEDURE.
Alter
语法允许您更改“特征”,但不能更改实际过程本身
http://dev.mysql.com/doc/refman/5.0/en/alter-procedure.html
这是创建、更改(评论)然后删除和重新创建的示例:
DROP PROCEDURE myFunc;
DELIMITER //
CREATE PROCEDURE myFunc ()
COMMENT 'test'
BEGIN
SELECT 5;
END //
DELIMITER ;
ALTER PROCEDURE myFunc
COMMENT 'new comment';
CALL myFunc();
DROP PROCEDURE myFunc;
DELIMITER //
CREATE PROCEDURE myFunc ()
COMMENT 'last time'
BEGIN
SELECT 6;
END //
DELIMITER ;
CALL myFunc();
上面的 CALL myFunc()
语句将返回 5,然后返回 6。
查看存储过程会显示“测试”、“新评论”或“上次”的评论,具体取决于您查看过程主体的时间(我不确定如何通过 CLI 查看评论,但我可以在 Navicat 的函数选项卡中查看它们)
关于mysql - 如何更改mysql中的存储过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13970258/