Задать вопрос
  • Как оптимальнее хранить в БД timestamp для каждого действия?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Нужно хранить (в БД) время нажатия кнопок (до секунд) и какая кнопка была нажата, как это лучше сделать?

    Таблица
    кнопка | время нажатия
    - это ЕДИСТВЕННЫЙ вариант, который должен приходить в голову автоматически.
    Все остальные фантазии из вас надо выбивать калёным железом.
    Сон разума рождает чудовищ, а фантазия похапешника, не отягощённая даже базовыми принципами программирования, рождает монстров.

    Там, где человек даже с уровнем профильного колледжа (бывш. ПТУ) не задумывается ни на минуту, над проблемой уровня "сколько будет 2х2", доблестный воин while mysql_fetch_array начинает морщить лоб, загибать пальцы, изобретать себе вселенскую проблему. А потом и монстра для ее решения.

    Разумеется, оправданием всех страданий является "меньше нагрузка на сервер, меньше траффик".
    Заботу о серверах я бы вообще законодательно запретил в коде, по крайней в течение первых трех лет кодинга. ещё никогда эта забота не приносила ничего полезного, но вот всякий мусор - в неисчислимых количествах.

    Он сервера-то никогда в глаза не видел, но старательно спасает сервера всего мира от чрезмерной нагрузки. И разумеется, в итоге получает нагрузку увеличенную. Поскольку решая несуществующие проблемы, от неграмотности начинает изобретать способы хранения данных, которые в десятки раз хуже стандартных.

    Идем в мануал и смотрим, сколько занимает какой тип:
    • int - 4 bytes
    • timestamp (mysql) - 4 bytes
    • datetime - 8 bytes - больше чем инт, но все равно меньше, чем самопальное кодирование в хекс.
    Ответ написан
    8 комментариев