Какой самый длинный телефонный номер в мире я должен учитывать в SQL varchar(length)
для телефона.
соображения:
- + для кода страны
- () для кода города
- x + 6 номеров для расширения Extension (сделайте так, чтобы 8 {пробел})
- пробелы между группами (т.е. в американских телефонах + х ххх ххх хххх = 3 пробела)
- вот где мне нужна ваша помощь, я хочу, чтобы она была по всему миру
Учтите, что в моем конкретном случае сейчас мне не нужны карточки и т. Д., Номер начинается с кода страны и заканчивается добавочным номером, комментариями факса / телефона и т. Д., А также не требует ввода телефонных карточек.
sql-server
validation
database-design
data-modeling
phone-number
Шимми Вайцхандлер
источник
источник
Ответы:
Если учесть, что между varchar (30) и varchar (100) нет разницы в накладных расходах, если вы храните только 20 символов в каждом, заблуждайтесь с осторожностью и просто сделайте 50.
источник
Предполагая, что вы не храните такие вещи, как «+», «()», «-», пробелы и «что у вас есть» (и почему бы вам это не нужно, это проблемы с представлением, которые могут варьироваться в зависимости от местных обычаев и сетевых распределений). в любом случае), рекомендация МСЭ-Т E.164 для международной телефонной сети (через которую подключено большинство национальных сетей) указывает, что весь номер (включая код страны, но не включая префиксы, такие как префикс международного вызова, необходимый для набора номера, который варьируется от страны к стране и не включает суффиксы, такие как добавочные номера УАТС, не более 15 символов .
Префиксы вызовов зависят от абонента, а не вызываемого абонента, и, следовательно, не должны (во многих случаях) храниться вместе с номером телефона. Если база данных хранит данные для личной адресной книги (в этом случае имеет смысл хранить префикс международного вызова), самые длинные международные префиксы, с которыми вам придется иметь дело ( согласно Википедии ), в настоящее время в Финляндии состоят из 5 цифр.
Что касается суффиксов, некоторые УАТС поддерживают расширения до 11 цифр (опять же, согласно Википедии ). Поскольку добавочные номера УАТС являются частью другой схемы набора номеров (УАТС отделены от телефонных станций), добавочные номера должны отличаться от телефонных номеров либо с разделителем, либо путем их сохранения в другом столбце.
источник
15
символы. При сохранении префикса и суффикса нижняя строка: 5 + 15 + 11 =31
.В спецификации GSM 3GPP TS 11.11 в MSISDN EF (6F40) выделено 10 байтов для «номера набора». Так как это GSM-представление телефонного номера, и его использование поменяно местами (и всегда есть возможность заключить в скобки) 22 символов данных должно быть достаточно.
По моему опыту, есть только один случай открытия / закрытия скобок, это мое рассуждение для вышеизложенного.
источник
Это немного хуже, я использую телефонную карточку для международных звонков, поэтому ее местный номер в США + учетная запись # (6 цифр) + пин-код (4 цифры) + «пауза» + то, что вы описали выше.
Я подозреваю, что могут быть и другие случаи
источник