MySQL客户端安装后可直接通过命令行创建和调用存储过程,需确保账户拥有CREATE ROUTINE和EXECUTE权限;使用DELIMITER修改结束符后定义存储过程,如CREATE PROCEDURE GetUserName(IN user_id INT) BEGIN SELECT name FROM users WHERE id = user_id; END //;通过CALL GetUserName(1)调用,SHOW PROCEDURE STATUS查看过程列表,SHOW CREATE PROCEDURE查看定义,支持DROP PROCEDURE删除或CREATE OR REPLACE PROCEDURE替换,操作简便但需注意DELIMITER设置。

MySQL 客户端安装完成后,可以直接通过命令行或其他客户端工具创建和调用存储过程。只要具备相应数据库的权限,无需额外配置即可使用存储过程功能。
启用本地客户端对存储过程的支持
MySQL 默认支持存储过程,但需确保使用的账户拥有 CREATE ROUTINE 和 EXECUTE 权限。
- 登录 MySQL 后,检查当前用户权限:SHOW GRANTS;
- 若缺少权限,管理员可授权:
GRANT CREATE ROUTINE, EXECUTE ON database_name.* TO 'username'@'host';
FLUSH PRIVILEGES;
创建存储过程
使用 DELIMITER 修改语句结束符,避免内部分号提前终止定义。
- 示例:创建一个根据用户 ID 查询姓名的存储过程DELIMITER //
CREATE PROCEDURE GetUserName(IN user_id INT)
BEGIN
SELECT name FROM users WHERE id = user_id;
END //
DELIMITER ;
调用与查看存储过程
创建后可通过 CALL 命令执行,并用系统命令查看已存在的过程。
- 调用方式:CALL GetUserName(1); - 查看所有存储过程:
SHOW PROCEDURE STATUS WHERE Db = 'your_database'; - 查看具体定义:
SHOW CREATE PROCEDURE GetUserName;
修改与删除存储过程
可根据需要更新或清除不再使用的存储过程。
- 删除存储过程:DROP PROCEDURE IF EXISTS GetUserName; - 替换已有过程(重新定义):
使用 CREATE OR REPLACE PROCEDURE 语法
基本上就这些操作。只要连接上 MySQL 客户端,就可以直接写 SQL 来管理存储过程,不复杂但容易忽略 DELIMITER 的设置。










