-- Migration pour ajouter userId aux UserPreferences
-- et migrer les données existantes vers le premier utilisateur

-- 1. Ajouter la colonne userId (nullable temporairement)
ALTER TABLE "user_preferences" ADD COLUMN "userId" TEXT;

-- 2. Créer un index unique sur userId
CREATE UNIQUE INDEX "user_preferences_userId_key" ON "user_preferences"("userId");

-- 3. Migrer les données existantes vers le premier utilisateur
-- (on suppose qu'il y a au moins un utilisateur dans la table users)
UPDATE "user_preferences" 
SET "userId" = (SELECT id FROM "users" LIMIT 1)
WHERE "userId" IS NULL;

-- 4. Rendre la colonne userId non-nullable
-- Note: SQLite ne supporte pas ALTER COLUMN, donc on doit recréer la table
-- Mais comme on a déjà des données, on va juste s'assurer que toutes les entrées ont un userId
-- En production, on devrait faire une migration plus complexe

-- 5. Ajouter la contrainte de clé étrangère
-- SQLite ne supporte pas les contraintes de clé étrangère dans ALTER TABLE
-- La contrainte sera gérée par Prisma au niveau applicatif
