Вопрос

Когда мы обнаруживаем эти предметы для посетителей:

  • Имя браузера
  • Версия браузера
  • Название ОС
  • ОС версия
  • Разрешение экрана
  • Глубина экрана
  • Flash включена
  • ...

Должны ли они быть сохранены в базе данных в отдельных столбцах или я должен хранить все это как строку агента пользователя, а затем разрушать его в приложении?

И должен использовать varchar(255) Для этого просто для того, чтобы быть в безопасности или есть четко определенные данные дата для этих элементов? Я использую MySQL и PHP

Это было полезно?

Решение

Это действительно зависит от того, что вы хотите делать с информацией. Если вы планируете использовать данные для очень подробной статистики, используйте отдельные столбцы, чтобы вы могли запустить подробные запросы, такие как «Показать все разрешения экрана для пользователей с интернет -проводником 6» и тому подобное.

Если вы не ожидаете, что вам нужна такая подробная статистика, хранение строки пользовательского агента в одном поле обычно работает нормально.

Другие советы

Вы должны хранить каждый элемент в своем собственном столбце. Это позволит вам легко запрашивать и суммировать ваши данные.

Разбор один раз при вставке дешево. Расположение по каждому запросу очень дорого.

Для этих элементов нет определенных данных данных, поэтому вы можете использовать varchar(255) или даже меньше. Лучше добавить эти значения в базу данных в отдельных полях, потому что они не оказывают заметного влияния на производительность + вставки один раз, прочитайте - больше раз, так почему же не разделяется ни разу, на записи, а не на каждое чтение? :)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top