Adressdatenbank normalisieren

Hallo zusammen

Ich möchte die Frage in die Runde werfen, ob jemand seine Adressdatenbank normalisiert. Das heisst, z.B. wenn ich eine Postleitzahl eingebe, wird automatisch der Ort herausgesucht und umgekehrt.

Mittlerweile habe ich zur Probe eine solche Datenbank erstellt, mit Schweizer PLZ (über 4700 Einträge). Es würde funktionieren aber meine Tabelle mit den Ortschaften ist fehlerhaft.

Ich möchte nur für Normalisierungen bei einer Adressdatenbank nachfragen.

mfg warmduscher

Ich denke, man sollte für die Klärung dieser Frage zunächst abschätzen, ob sich der Aufwand lohnt. Solange die Anzahl der Adressen viel kleiner ist als die Anzahl der möglichen Orte würde ich keinen großen Bedarf für die Normalisierung sehen. Dazu kommt, dass manche Adressen im Ausland liegen können mit z.T. gleichen Postleitzahlen. Man muss also auch noch nach Ländern unterscheiden und ggf. weitere Ortslisten importieren.

Ein anderer Fall sind auch mehrere Ortschaften, die die gleiche Postleitzahl haben (weil sie so dicht beienander liegen und vermutlich vom gleichen Postamt betreut werden). Hier in der Nähe von Berlin gibt es z.B. 15366 Neuenhagen, 15366 Hönow, 15366 Birkenstein, 15366 Dahlwitz-Hoppegarten und vielleicht noch mehr. Die Zuordnung von PLZ zu Ort ist also nicht immer eineindeutig. Manchmal müssen Ortsteile angegeben werden, um solche Konflikte zu lösen. Da es für mich viel einfacher, auf die Normaliserung zu verzichten und dafür mehr Flexibilität zu haben.

Würde aber über eine Relation relativ rasch zu realisieren sein. Voraussetzung ist natürlich, dass du die aktuellen Daten der PLZ’s eirgendwo her bekommst, die Du dann in eine Tabelle importierst.

Kommst du auf das PLZ-Feld, kannst du sofort die Tabelle öffnen lassen und suchen (Einstellung: Feldeigenschaften >> Reiter „Realtion“ > Ändern). Dann solltest Du auch die verschiedene Orte für eine PLZ angezeigt bekommen. Ein Klick auf den gewünschten Ort und er ist eingetragen.

Entspricht nicht ganz Deinen Vorstellungen, ist aber (auch in anderen Tabellenzusammenhängen) sinnig.

Gruß S.G.

papyrus-ebook-schrift-formierung-verdana.jpg

papyrus-ebook-inhaltsverzeichnis-links-seitenzahlen-rechts-ausrichten.jpg

Inzwischen habe ich eine Datenbank mit Relationen erstellt. Wie von guthan vorgeschlagen.

Ich habe nur Schweizer Ortschaften und PLZ verwendet. Von der Schweizer Post gibt es eine PLZ Tabelle zum download.

match.postmail.ch

In Libreoffice habe ich die überflüssigen Zellen gelöscht und in dBase Format abgespeichert. Nun konnte ich die Tabelle in Papyrus importieren.

Ich habe damit ein wenig herumgespielt:

  • Die Eingabedauer eines Datensatzes wird verlängert.
  • Schreibfehler werden verhindert, da alles vorgegeben ist.
  • Wenn etwas nicht in der Tabelle ist, kann es nicht eingegeben werden.

  • Die Datensätze müssen wegen den Relationen neu eingegeben werden.

Ich gehe wieder zurück auf meine alte Datenbank.

Wenn die Papyrus Entwickler mal zu wenig Arbeit haben, könnten Sie so etwas wie eine Auto-Vervollständigen Funktion entwickeln, die vervollständigt was der User will und braucht. Nicht so wie bei den Handys oder beim iPhone.

mfg warmduscher

Das ist nicht ganz richtig, denn wenn etwas nicht in der Tabelle ist, kann es trotzdem ergänzt werden – auch wenn man gerade dabei war, einen Datensatz aus der verknüpften Tabelle herauszusuchen und merkt, dass er gar nicht da ist. In diesem Fall einfach F2 drücken (Neuer Datensatz) und schon kann man die fehlenden Daten eingeben.

Hier habe ich mal eben ganz schnell eine PapyrusBase-PLZ-Datenbank erstellt. Daten sind ODP, siehe hier

www.dmoz.org

Dies PB ließe sich durch Import in eine andere Datenbank integrieren, um sie dann mittels Relation in die eigentliche Adressdatenbank zu verlinken.

Gruß S.G.

PLZ_PB.zip (115 KB)

Ich besitze eine Apple Tastatur und eine apple mighty mouse.

In dieser Kombination funktioniert das F2=Neuer Datensatz standardmässig nicht.

Man muss unter Einstellungen⇒Tastatur⇒ den Button"Tasten F1,F2 …als Funktionstasten verwenden" anklicken.

Das klappt bei den Großstädten aber nur in eine Richtung (eingetippte PLZ gibt Ort), da für die Postleitzahlen Ort und Straße gebraucht werden.

Oder fn-F2 drücken. Oder auf den “Neu”-Button klicken.

Ich war davon ausgegangen, dass du die PLZ weißt und nur schnell den Ort dazu angezeigt bekommen willst. Das andere (zu einer Straße die PLZ in einer Großstadt) ist natürlich bedeutend aufwendiger und lässt sich nicht in 20 Min. machen. (Wenn überhaupt dazu die Daten ODP zu erhalten sind).

Gruß S.G.