ALTER TABLE users ADD COLUMN IF NOT EXISTS reset_password_token VARCHAR(255); ALTER TABLE users ADD COLUMN IF NOT EXISTS reset_password_sent_at TIMESTAMP WITH TIME ZONE; ALTER TABLE users ADD COLUMN IF NOT EXISTS confirmation_token VARCHAR(255); ALTER TABLE users ADD COLUMN IF NOT EXISTS confirmation_sent_at TIMESTAMP WITH TIME ZONE; CREATE UNIQUE INDEX IF NOT EXISTS idx_users_reset_password_token ON users(reset_password_token) WHERE reset_password_token IS NOT NULL AND reset_password_token <> ''; CREATE INDEX IF NOT EXISTS idx_users_confirmation_token ON users(confirmation_token) WHERE confirmation_token IS NOT NULL AND confirmation_token <> '';