Какой самый длинный возможный номер телефона во всем мире я должен рассмотреть в SQL varchar (длина) для телефона

какой самый длинный возможный номер телефона во всем мире я должен рассмотреть в SQL varchar(length) для телефона.

вопросы:

  • + для код страны
  • () для код
  • x + 6 чисел для расширения расширения (так что сделайте это 8 {пробел})
  • пространства между группами (т. е. в американских телефонах +X xxx xxx xxxx = 3 пространства)
  • вот где мне нужна ваша помощь, я хочу, чтобы во всем мире

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

4 ответов


ну, учитывая, что нет никакой разницы между varchar(30) и varchar(100), если вы храните только 20 символов в каждом, ошибитесь на стороне осторожности и просто сделайте это 50.


предполагая, что вы не храните такие вещи, как '+', '()', '-', пространства и то, что у вас есть (и почему бы вам, это презентационные проблемы, которые будут варьироваться в зависимости от местных обычаев и сетевых распределений в любом случае), рекомендация ITU-T Е. 164 для международной телефонной сети (через которую подключается большинство национальных сетей) указывает, что весь номер (включая код страны, но не включая префиксы, такие как международные звонки префикс необходимо для набора номера, который варьируется от страны к стране, ни включая суффиксы, такие как добавочные номера АТС) не более 15 символов.

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

Что касается суффиксов, некоторые УАТС поддерживают до 11-значные расширения (опять же,согласно Википедии). Поскольку добавочные номера УАТС являются частью другого плана набора номера (УАТС отделены от телефонных компаний), добавочные номера должны быть отличимы от телефонных номеров либо с символом разделителя, либо путем их хранения в другом столбце.


в спецификации GSM В 3GPP ТС 11.11, есть 10 байт, выделенных в MSISDN EF (6F40) для "набора номера". Поскольку это GSM-представление номера телефона, и его использование заменено на nibble (и всегда есть возможность скобок), 22 символа данных должно быть много.

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


Это немного хуже, я использую визитную карточку для международных звонков, поэтому ее локальный номер в US + account# (6 цифр) + pin (4 цифры) + "пауза" + то, что вы описали выше.

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