Supabase repose sur PostgreSQL, le système de base de données relationnelle le plus avancé du monde open source. Grâce aux triggers, fonctions et procédures stockées, vous pouvez automatiser des logiques métier directement dans la base de données.
Pour une vue d’ensemble, lis notre guide complet Supabase. Pour la structure des tables, consulte notre guide créer et structurer sa base de données Supabase. Pour sécuriser ces fonctions, lis notre article sur le Row Level Security Supabase. Pour l’architecture générale, voir architecture Supabase.
Les Fonctions PostgreSQL dans Supabase
CREATE OR REPLACE FUNCTION get_user_age(user_id UUID)
RETURNS INTEGER AS $$
SELECT EXTRACT(YEAR FROM AGE(birthdate))::INTEGER
FROM profiles WHERE id = user_id;
$$ LANGUAGE sql STABLE;
-- Appel depuis le client Supabase
const { data } = await supabase.rpc('get_user_age', { user_id: 'uuid-here' })
Les Triggers PostgreSQL
Cas d’usage 1 : Mise à jour automatique de updated_at
CREATE OR REPLACE FUNCTION update_updated_at()
RETURNS TRIGGER AS $$
BEGIN
NEW.updated_at = NOW();
RETURN NEW;
END;
$$ LANGUAGE plpgsql;
CREATE TRIGGER posts_updated_at
BEFORE UPDATE ON posts
FOR EACH ROW EXECUTE FUNCTION update_updated_at();
Cas d’usage 2 : Créer un profil automatiquement à l’inscription
CREATE OR REPLACE FUNCTION public.handle_new_user()
RETURNS TRIGGER AS $$
BEGIN
INSERT INTO public.profiles (id, email, created_at)
VALUES (NEW.id, NEW.email, NOW());
RETURN NEW;
END;
$$ LANGUAGE plpgsql SECURITY DEFINER;
CREATE TRIGGER on_auth_user_created
AFTER INSERT ON auth.users
FOR EACH ROW EXECUTE FUNCTION public.handle_new_user();
Bonnes Pratiques
- ✅ SECURITY DEFINER pour les fonctions avec droits élevés
- ✅ Fonctions SQL pour les requêtes simples (meilleure performance)
- ✅ PL/pgSQL pour la logique complexe
- ❌ Évitez les triggers en cascade — difficiles à déboguer
👉 Articles du guide Supabase
Cet article fait partie du Guide Complet Supabase 2026. Retrouvez les autres articles :
- ✅ Supabase : Le Guide Complet 2026
- ✅ Supabase vs Firebase : Comparatif Complet 2026
- ✅ Installer Supabase en Local avec Docker
- ✅ Supabase Pricing : Quel Plan Choisir en 2026
- ✅ Architecture Supabase : Postgres, GoTrue, Realtime et Storage
- ✅ Créer et Structurer sa Base de Données Supabase
- ✅ Supabase RLS : Sécuriser ses Données avec Row Level Security
- 📅 Supabase Migrations — à paraître le 12/06
- 📅 Supabase Auth — à paraître le 14/06





