Базы Данных (Data Base) | SQL & NoSQL. PostgreSQL, MySQL и Big Data. Уроки для Backend и Data Engineer. Архитектура БД, Оптимизация и Design.
IT и технологии · 10 июня 2026 г.
❌ Антипаттерн: булевы значения как строки — 10 июня 2026 г. в 04:49:18.501
❌ Антипаттерн: булевы значения как строки В таблице users встречал такое: is_active VARCHAR(5) -- значения 'true' или 'false' На первый взгляд — ерунда. На практике: – нет валидации: можно вставить 'tru', 'yes', '0', – медленнее сравнение, чем у BOOLEAN, – больше места в хранилище, – сложно агрегировать и строить аналитику. 🔧 Как надо: is_active BOOLEAN DEFAULT true – Экономия места (1 байт против 5 и больше) – Проверка через WHERE is_active – Простой COUNT(*) FILTER (WHERE is_active) для отчётов – Автоматическая поддержка в ORM и UI-форматах 📌 Даже если тебе нужно больше состояний - используй ENUM, а не строку. 💡Чем проще тип, тем меньше шансов на баг. Сохрани, если в коде встречал такое - и переделай с чистой совестью. #db 👉 @database_info

