Каков наилучший способ хранения и получения почтовых адресов с использованием базы данных сервера sql и платформы .NET?

StackOverflow https://stackoverflow.com/questions/70153

Вопрос

Я ищу общий шаблон, который будет хранить глобальные адреса и получать к ним доступ в базе данных.Могут быть использованы компоненты или другие технологии.Необходимо соблюдать следующие критерии...

  • Каждая строка адреса сохраняется для каждой страны.
  • Почтовые индексы перед сохранением проверяются с помощью регулярного выражения
  • Страна оригинала сохраняется в отдельном поле. При отображении данных [адрес форматируется] (http://en.wikipedia.org/wiki/Почтовый_адрес) в стиле той страны
  • Когда данные вводятся с использованием формы, поля меток максимально информативны, поэтому метки должны быть динамическими в зависимости от страны происхождения.
  • Адреса занимают минимально возможное пространство.
Это было полезно?

Решение

Я отсылаю вас к моему сообщению в блоге - Урок хранения адресов по причинам, почему ты не должен храните адреса в принятом в настоящее время формате и должны быть правильно нормализованы!Не ленитесь с хранением адресов, в будущем это не доставит вам ничего, кроме головной боли!

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

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

Как насчет сохранения адресов в виде текста (с возможностью перевода строки).Почтовый индекс необходимо извлечь из адреса с помощью регулярного выражения (выбирается на основе раскрывающегося списка стран) и сохранить в отдельном столбце.

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

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