Was ist der beste Weg, Postadressen mit einer SQL Server-Datenbank und das .NET Framework zu speichern und abzurufen?

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

Frage

Ich suche nach einem gemeinsamen Muster, das in der Datenbank speichert und Zugriff auf globale Adressen. Komponenten oder andere Technologien verwendet werden. Folgende Kriterien müssen adheard werden ...

  • Jede Zeile der Adresse wird für jedes Land gespeichert
  • Postleitzahlen mit einem regulären Ausdruck getestet werden, bevor sie gespeichert werden
  • Land Original in einem eigenen Feld gespeichert wird, wenn die Daten angezeigt wird, die [wird Adresse formatiert] ( http://en.wikipedia.org/wiki/Postal_address ) im Stil des Landes
  • Wenn die Dateneingabe ist eine Form der Beschriftungsfelder sind so ausführlich wie möglich verwenden, so definiert die Etiketten auf das Herkunftsland dynamisch.
  • Die Adressen nehmen die Mindestabstände möglich bis
War es hilfreich?

Lösung

Ich werde Sie in meinem Blog Post beziehen - eine Lektion in Adressspeicher Gründe, warum Sie nicht Speicher-Adressen im Format derzeit angenommen und sollte richtig normalisiert werden! Nicht mit Adressspeicher nicht faul, es führt, dass Sie nichts anderes als Kopfschmerzen in der Zukunft!

Außerdem gibt es eine andere Stackoverflow Frage, die diese Frage stellt. Berechtigte Wie soll internationale geographische Adressen in einem gespeichert werden relationale Datenbank .

Andere Tipps

Wie wäre es, die Adressen als Text speichern (so dass Zeilenumbrüche). Die Postleitzahl wird von der Adresse mit einem regex extrahiert werden (ausgewählt basierend auf einem Land, Drop-Down) und soll in einer separaten Spalte gespeichert werden.

Diese befasst sich nicht mit dem „so ausführlich wie möglich“ Anforderungen, aber in der Regel wird zur Folge haben mehr Einschränkungen über das Format der Daten Durchsetzung in einem Prozentsatz der gültigen Adressen abgelehnt. Es wird auch mehr Platz als eine einzelne varchar Spalte nehmen. Daher wird es immer ein Kompromiss zwischen den Anforderungen, die Sie aufgelistet.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top