Типы данных MySQL: int против enum - PullRequest
4 голосов
/ 30 октября 2010

У меня есть несколько столбцов, в которых нужно хранить только несколько значений (например, 0, 1, 2, 3).Какой тип данных я должен выбрать для такого случая?Я чувствую, что должен выбрать что-то вроде ENUM («0», «1», «2»).Будет ли int лучше (несмотря на то, что он менее ограничительный)?Должен ли я рассмотреть что-то еще (например, tinyint)?

РЕДАКТИРОВАТЬ:

На самом деле, какой общий совет я должен учитывать при выборе типа данных?

Ответы [ 2 ]

5 голосов
/ 30 октября 2010

Если вы хотите ограничить его этими 3 значениями, то действительно ENUM может быть лучшим.

Если, однако, существует вероятность того, что в будущем понадобится больше значений, то TINYINT UNSIGNED, вероятно, будет лучшим решением.

1 голос
/ 30 октября 2010

Рекомендуется использовать enum с фиксированным набором. Если вы хотите расширить, то «Alter» - это изменение схемы, которого следует избегать.

Найдите лучшее представление о выборе типа данных

и получите сравнение enum с типами данных

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...