Перейти к содержимому

База данных

Боту нужна база, если надо помнить пользователей, баллы, настройки. Для небольших проектов хватает SQLite, для нагрузки - PostgreSQL.

  • Пользователь: telegram_id, имя, дата регистрации, роль.
  • События: что сделал пользователь и когда (для начисления баллов).
  • Настройки: тексты, лимиты, параметры уровней.
  1. Нарисуйте таблицы и связи.
  2. Используйте миграции или хотя бы скрипт создания таблиц.
  3. Все запросы - параметризованные, без склейки строк.
  4. Делайте резервную копию базы по расписанию.
  • Хранение данных в переменных: после перезапуска всё теряется.
  • SQL-инъекции из-за склейки строк.
  • Нет индекса по telegram_id.
  • Таблицы описаны
  • Запросы параметризованы
  • Есть бэкап