Some checks are pending
Backend CI / test (push) Waiting to run
Backend CI / build (push) Blocked by required conditions
Web App CI / test (push) Waiting to run
Web App CI / build (push) Blocked by required conditions
Deploy Mnemo Cards / Deploy Backend (push) Waiting to run
Deploy Mnemo Cards / Deploy Web App (push) Blocked by required conditions
Deploy Mnemo Cards / Final Verification (push) Blocked by required conditions
53 lines
1.6 KiB
SQL
53 lines
1.6 KiB
SQL
-- Migration 001: Remove deprecated fields from payments table
|
|
-- Date: 2025-12-14
|
|
-- Description: Remove deprecated packs and subscription columns from payments
|
|
|
|
-- Проверка перед удалением: убедиться что все используют products
|
|
DO $$
|
|
DECLARE
|
|
count_with_packs INTEGER;
|
|
count_with_subscription INTEGER;
|
|
BEGIN
|
|
-- Проверить сколько записей используют старые поля
|
|
SELECT COUNT(*) INTO count_with_packs
|
|
FROM payments
|
|
WHERE packs IS NOT NULL AND packs != '[]';
|
|
|
|
SELECT COUNT(*) INTO count_with_subscription
|
|
FROM payments
|
|
WHERE subscription = true;
|
|
|
|
-- Показать предупреждение если есть данные
|
|
IF count_with_packs > 0 THEN
|
|
RAISE WARNING 'Found % payments with non-empty packs field. Please migrate data first!', count_with_packs;
|
|
END IF;
|
|
|
|
IF count_with_subscription > 0 THEN
|
|
RAISE WARNING 'Found % payments with subscription=true. Please migrate data first!', count_with_subscription;
|
|
END IF;
|
|
END $$;
|
|
|
|
-- Если warnings есть, остановитесь и мигрируйте данные!
|
|
-- Если нет - продолжайте:
|
|
|
|
-- Backup: создать копию перед удалением (опционально)
|
|
-- CREATE TABLE payments_backup_20251214 AS SELECT * FROM payments;
|
|
|
|
-- Удаление deprecated колонок
|
|
ALTER TABLE payments DROP COLUMN IF EXISTS packs;
|
|
ALTER TABLE payments DROP COLUMN IF EXISTS subscription;
|
|
|
|
-- Проверка результата
|
|
\d payments
|
|
|
|
-- Vacuum для освобождения места
|
|
VACUUM FULL ANALYZE payments;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|