关于 stored-procedures
用于实现存储过程、函数和触发器的技能,处理业务逻辑、数据验证与性能需求。内容涵盖设计和错误处理,并提供函数及 PostgreSQL、MySQL 触发器参考。
主要功能
- 01存储过程与函数设计
- 02基于触发器的自动化
- 03业务逻辑与数据验证
- 04错误处理指引
- 05PostgreSQL 和 MySQL 触发器参考
适用场景
- 01封装业务逻辑
- 02执行多步骤数据库操作
- 03验证数据并维护审计记录
- 04在应用间复用逻辑
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ aj-geddes/ useful-ai-prompts --skill stored-procedures安装后在 Claude Code 中输入/stored-procedures确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/complex-procedures-with-error-handling.mdmysql-triggers.mdpostgresql-triggers.mdsimple-functions.mdsimple-procedures.mdstored-procedures.mdscripts/validate-schema.shtemplates/migration-template.sql详细介绍
存储过程与函数
目录
概述
实现存储过程、函数和触发器,以处理业务逻辑、数据验证和性能优化。涵盖过程设计、错误处理和性能注意事项。
适用场景
- 封装业务逻辑
- 复杂的多步骤操作
- 数据验证与约束
- 维护审计跟踪
- 性能优化
- 在多个应用程序间复用代码
- 基于触发器的自动化
快速开始
PostgreSQL - 标量函数:
-- Create function returning single value
CREATE OR REPLACE FUNCTION calculate_order_total(
p_subtotal DECIMAL,
p_tax_rate DECIMAL,
p_shipping DECIMAL
)
RETURNS DECIMAL AS $$
BEGIN
RETURN ROUND((p_subtotal * (1 + p_tax_rate) + p_shipping)::NUMERIC, 2);
END;
$$ LANGUAGE plpgsql IMMUTABLE;
-- Use in queries
SELECT id, subtotal, calculate_order_total(subtotal, 0.08, 10) as total
FROM orders;
-- Or in application code
SELECT * FROM orders
WHERE calculate_order_total(subtotal, 0.08, 10) > 100;
参考指南
references/ 目录中的详细实现:
| 指南 | 内容 |
|---|---|
| 简单函数 | 简单函数 |
| 存储过程 | 存储过程 |
| 简单过程 | 简单过程 |
| 带错误处理的复杂过程 | 带错误处理的复杂过程 |
| PostgreSQL 触发器 | PostgreSQL 触发器 |
| MySQL 触发器 | MySQL 触发器 |
最佳实践
✅ 应该
- 遵循既定模式和规范
- 编写清晰、易于维护的代码
- 添加适当的文档
- 在部署前进行全面测试
❌ 不应该
- 跳过测试或验证
- 忽略错误处理
- 硬编码配置值
评论
支持 Markdown