Files
peakskills/scripts/migrations/add_auth_fields.sql
2025-08-25 14:02:07 +02:00

23 lines
843 B
SQL

-- Ajout des champs email et password à la table users
-- Étape 1: Ajouter les colonnes sans contraintes NOT NULL
ALTER TABLE users
ADD COLUMN email VARCHAR(255),
ADD COLUMN password_hash VARCHAR(255);
-- Étape 2: Remplir les colonnes avec des valeurs par défaut pour les données existantes
UPDATE users
SET
email = CONCAT(LOWER(first_name), '.', LOWER(last_name), '@peakskills.local'),
password_hash = '$2b$10$default.hash.for.existing.users.placeholder'
WHERE email IS NULL;
-- Étape 3: Ajouter les contraintes NOT NULL après avoir rempli les données
ALTER TABLE users
ALTER COLUMN email SET NOT NULL,
ALTER COLUMN password_hash SET NOT NULL;
-- Étape 4: Ajouter l'index et la contrainte unique sur l'email
CREATE INDEX idx_users_email ON users(email);
ALTER TABLE users ADD CONSTRAINT users_email_unique UNIQUE (email);