mcpField
S
stored-procedures

stored-procedures

github.com/aj-geddes数据与数据库373454 次安装34 周前更新
代码仓库

关于 stored-procedures

用于实现存储过程、函数和触发器的技能,处理业务逻辑、数据验证与性能需求。内容涵盖设计和错误处理,并提供函数及 PostgreSQL、MySQL 触发器参考。

主要功能

  1. 01存储过程与函数设计
  2. 02基于触发器的自动化
  3. 03业务逻辑与数据验证
  4. 04错误处理指引
  5. 05PostgreSQL 和 MySQL 触发器参考

适用场景

  1. 01封装业务逻辑
  2. 02执行多步骤数据库操作
  3. 03验证数据并维护审计记录
  4. 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.md
mysql-triggers.md
postgresql-triggers.md
simple-functions.md
simple-procedures.md
stored-procedures.md
scripts/
validate-schema.sh
templates/
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