Use when you need to generate, validate, or deploy stored procedures for PostgreSQL, MySQL, or SQL Server. Creates database functions, triggers, and procedures with proper error handling and transaction management. Trigger with phrases like "generate stored procedure", "create database function", "write SQL procedure", "add trigger to table", or "create CRUD procedures".
Install with Tessl CLI
npx tessl i github:jeremylongshore/claude-code-plugins-plus-skills --skill generating-stored-procedures91
Quality
86%
Does it follow best practices?
Impact
96%
0.98xAverage score across 6 eval scenarios
PostgreSQL stored procedure workflow
PostgreSQL dollar-quoting
100%
100%
LANGUAGE plpgsql
100%
100%
CREATE FUNCTION/PROCEDURE syntax
100%
100%
Exception/rollback block
100%
100%
Parameterized inputs
100%
100%
Inventory deduction logic
100%
100%
Order insertion
100%
100%
Returns order ID
100%
100%
No MySQL syntax
100%
100%
Security mention
100%
100%
Without context: $0.2706 · 1m 14s · 18 turns · 60 in / 3,856 out tokens
With context: $0.5398 · 2m 26s · 26 turns · 2,618 in / 5,900 out tokens
MySQL trigger for audit logging
DELIMITER statement
100%
100%
FOR EACH ROW clause
100%
100%
Three trigger events
100%
100%
OLD/NEW references
100%
100%
Audit table creation
100%
100%
CURRENT_USER or NOW()
100%
100%
INSERT into audit table
100%
100%
No PostgreSQL syntax
100%
100%
Operation type recorded
100%
100%
README documentation
100%
100%
Without context: $0.2507 · 1m 15s · 11 turns · 12 in / 4,924 out tokens
With context: $0.8528 · 5m 26s · 31 turns · 30 in / 10,208 out tokens
SQL Server atomic transaction SP
CREATE PROCEDURE syntax
100%
100%
BEGIN TRANSACTION
100%
100%
COMMIT TRANSACTION
100%
100%
TRY/CATCH error handling
100%
100%
ROLLBACK in CATCH
100%
100%
T-SQL parameter syntax
100%
100%
Sufficient-funds check
100%
100%
No MySQL/PostgreSQL syntax
100%
100%
Transaction history insert
100%
100%
Security review note
100%
100%
Without context: $0.2272 · 1m 17s · 13 turns · 16 in / 4,356 out tokens
With context: $0.5657 · 3m 18s · 23 turns · 54 in / 7,240 out tokens
PostgreSQL naming conventions and performance
p_ parameter prefix (CLV function)
100%
100%
p_ parameter prefix (price function)
100%
100%
v_ variable prefix
100%
100%
snake_case verb-prefix names
50%
50%
STABLE volatility on CLV function
100%
100%
Set-based price adjustment
100%
100%
RETURNS TABLE for CLV
100%
100%
Dollar-quoting syntax
100%
100%
LANGUAGE plpgsql declaration
100%
100%
CREATE OR REPLACE FUNCTION
100%
100%
Without context: $0.1903 · 59s · 10 turns · 11 in / 2,769 out tokens
With context: $0.6827 · 2m 29s · 27 turns · 3,105 in / 6,723 out tokens
SQL Server dynamic SQL and documentation
SET NOCOUNT ON
100%
100%
Schema-qualified procedure name
100%
100%
Schema-qualified table reference
100%
100%
@PascalCase parameters
100%
100%
sp_executesql usage
100%
100%
No direct string concatenation of params
100%
100%
THROW or RAISERROR validation
100%
100%
Documentation header
100%
100%
NULL filter handling
100%
100%
No MySQL/PostgreSQL syntax
100%
100%
Without context: $0.2142 · 1m 10s · 12 turns · 15 in / 3,436 out tokens
With context: $0.5214 · 1m 51s · 23 turns · 3,828 in / 5,414 out tokens
MySQL OUT parameters, SIGNAL errors, and validation workflow
DELIMITER statement
100%
100%
OUT parameter for vendor ID
100%
100%
IN parameter mode declared
100%
100%
SIGNAL SQLSTATE for tier validation
100%
60%
SIGNAL SQLSTATE for duplicate email
100%
100%
LAST_INSERT_ID() usage
100%
100%
Transaction with EXIT HANDLER
0%
0%
Rollback script exists
100%
100%
Validation report produced
100%
100%
No PostgreSQL/SQL Server syntax
100%
100%
Without context: $0.6786 · 5m 2s · 24 turns · 25 in / 13,419 out tokens
With context: $1.2139 · 6m 18s · 33 turns · 33 in / 20,232 out tokens
Table of Contents
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.