如何在PhpStorm中保留MySQL存储过程自定义格式?
解决PhpStorm 2023.2中MySQL存储过程参数缩进格式化异常问题
调整MySQL存储过程参数格式化规则
- 打开PhpStorm设置(快捷键:Windows/Linux用
Ctrl+Alt+S,Mac用Cmd+,) - 导航到 Editor > Code Style > SQL > MySQL
- 切换到「Wrapping and Braces」标签页,找到「Procedure/function parameters」分组:
- 根据自定义格式需求,设置「Wrap parameters」为「Wrap always」或「Wrap if long」
- 调整「Indent」数值为你习惯的缩进级别(比如4空格)
- 若不需要参数对齐,取消勾选「Align when multiline」;若需要对齐则保持勾选
- 切换到「Other」标签页,找到「Procedure/function definition」相关设置,确保「Indent inside procedure parameters」的数值和参数列表缩进一致
统一保存与快捷键格式化的规则
- 导航到 Settings > Tools > Actions on Save
- 确认「Reformat code」选项的应用范围包含你的存储过程文件,避免局部规则冲突
- 验证快捷键
Alt+R(Reformat Code)使用的是上述调整后的MySQL格式化规则,而非全局SQL规则
测试验证
调整完设置后,手动整理存储过程参数的自定义缩进,执行Alt+R格式化或保存文件,检查参数缩进是否保持一致。若仍有异常,可尝试重置SQL格式化规则后重新配置,或排查是否有第三方插件干扰格式化逻辑
示例调整后的存储过程格式(格式化后保留自定义缩进):
CREATE PROCEDURE get_user_count( IN in_user_type INT, OUT out_retCount INT ) BEGIN SELECT COUNT(*) INTO out_retCount FROM users WHERE user_type = in_user_type; END
内容的提问来源于stack exchange,提问作者Petro Gromovo
相关产品推荐
相关产品推荐

