Как вы храните номера сотовых телефонов в базе данных?

С возрастом текстовых сообщений и тому подобное, какой хороший способ хранить номера телефонов в базе данных?

В США текстовые сообщения обрабатываются по телефонным номерам, но в других странах я слышал, что они используют адреса электронной почты, поэтому я предполагаю, что существует способ разграничения между странами, использующими номера сотовых телефонов в качестве их адреса.

Дополнение: Например, люди в США могут использовать 432-342-3333 или 1-432-342-3333, в то время как в Великобритании они могут использовать +44 800 400000, или они могут даже отказаться от 44. 44 и 1 делают разницу при автоматической отправке SMS. Тем не менее, проверка номера телефона для каждой страны может утомиться. В этом случае разделил бы код страны или объединил бы его в один столбец и разобраться с ним?

Ответы

Ответ 1

В основном я бы использовал текстовое поле или ряд текстовых полей, даже если вы используете числовой номер телефона по следующим причинам.

  • Номера телефонов имеют большой диапазон значений, включая номера внутренних номеров, которые могут привести к тому, что числовые столбцы теряют точность.
  • Потеря точности в телефонном номере довольно плохая.
  • Нет логической причины, чтобы хотеть выполнять математику (добавление/умножение) по номеру телефона.

Кроме того, вы можете указать, как вы используете эти данные. Если вы планируете автоматическую службу обмена сообщениями, вам понадобится серия ретрансляционных агентов для трансляции через, поэтому вы можете также добавить идентификатор, относящийся к реле, к которому относится информация. Тогда все, о чем вы должны беспокоиться, это то, что агент-ретранслятор может понять содержимое в текстовых полях.

Ответ 2

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

Не как число!!! Ведущие нули могут быть проблематичными.

Ответ 3

Я не знаю, прочитали ли вы эти два вопроса, но они могут помочь вам немного.

Возможно, было бы разумно хранить тип номера (стационарный, сотовый, факс) и/или сообщения, которые могут быть получены на нем (голос, текст, электронная почта). Обратите внимание, что в США также можно отправлять текстовые сообщения на телефон по электронной почте, но я считаю, что это зависит от носителя.