Migration Supabase

Créer et exécuter des migrations de base de données Supabase avec des politiques RLS appropriées.

Spar Skills Guide Bot
DeveloppementIntermédiaire
1024/07/2026
Claude Code
#supabase#migration#database#rls#sql

Recommandé pour


name: Supabase Migration description: Create and run Supabase database migrations with proper RLS policies

Supabase Migration Skill

Overview

This skill helps create and execute Supabase database migrations with proper Row Level Security (RLS) policies.

When to Use

  • Creating new tables
  • Adding columns to existing tables
  • Setting up RLS policies
  • Running migrations in production

Instructions

1. Create Migration File

Create SQL migration in /supabase/migrations/YYYYMMDD_description.sql:

-- ═══════════════════════════════════════════════════════════════════════════
-- MIGRATION: [Description]
-- ═══════════════════════════════════════════════════════════════════════════

-- Create table
CREATE TABLE IF NOT EXISTS public.table_name (
    id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
    created_at TIMESTAMPTZ DEFAULT NOW()
);

-- Enable RLS
ALTER TABLE public.table_name ENABLE ROW LEVEL SECURITY;

-- Create policies
CREATE POLICY "Public read access" ON public.table_name 
    FOR SELECT USING (true);

2. Run Migration

Use browser agent to execute SQL in Supabase dashboard:

  • Navigate to /sql/new
  • Inject SQL via Monaco editor
  • Click Run and confirm

3. Verify

Check Security Advisor at /advisors/security for any new issues.

Policy Templates

Public Read

CREATE POLICY "Public read access" ON public.table_name 
    FOR SELECT USING (true);

User Owned

CREATE POLICY "Users manage own data" ON public.table_name 
    FOR ALL USING (auth.uid() = user_id);

System Managed

CREATE POLICY "System manages data" ON public.table_name 
    FOR ALL USING (true);
Skills similaires