-- Добавление колонок job и state -- Дата: 2025-11-06 -- Исправляет ошибки: "column job does not exist" и "State column does not exist" -- 1. Добавляем колонку job в таблицу profiles (синоним для occupation) ALTER TABLE profiles ADD COLUMN IF NOT EXISTS job VARCHAR(255); -- 2. Копируем существующие данные из occupation в job UPDATE profiles SET job = occupation WHERE occupation IS NOT NULL AND job IS NULL; -- 3. Добавляем колонку state в таблицу users для отслеживания состояния диалога ALTER TABLE users ADD COLUMN IF NOT EXISTS state VARCHAR(50); -- 4. Создаём индексы для производительности CREATE INDEX IF NOT EXISTS idx_profiles_job ON profiles(job); CREATE INDEX IF NOT EXISTS idx_users_state ON users(state); -- 5. Добавляем комментарии для документации COMMENT ON COLUMN profiles.job IS 'Профессия/работа пользователя (синоним для occupation)'; COMMENT ON COLUMN profiles.occupation IS 'Профессия/работа пользователя (устаревшее, используйте job)'; COMMENT ON COLUMN users.state IS 'Текущее состояние пользователя в диалоге с ботом'; -- Проверка результата SELECT 'profiles.job' as column_name, CASE WHEN EXISTS ( SELECT 1 FROM information_schema.columns WHERE table_name = 'profiles' AND column_name = 'job' ) THEN '✅ Существует' ELSE '❌ Не найдена' END as status UNION ALL SELECT 'users.state' as column_name, CASE WHEN EXISTS ( SELECT 1 FROM information_schema.columns WHERE table_name = 'users' AND column_name = 'state' ) THEN '✅ Существует' ELSE '❌ Не найдена' END as status;