Impressum   

OpenGeoDB

OpenGeoDB Informationen Die Datensammlung OpenGeoDB bietet in Ihrer Version 0.2.4d geografische Daten von den Ländern Deutschland, Österreich, Schweiz, Belgien und Liechtenstein.

Deutschland in verschiedenen Sparchen

Benötigt wird eine Datenbank, die utf-8 String abspeichern kann, damit man u.a. auch die hebräische Schreibweise von Deutschland bewundern kann.

Auf Sourceforge liegen die SQL-Scripte für MySQL und Postgres vor.

 

Da das Verständnis der hierarchisch aufgebauten Datensammlung schwierig ist, habe ich für die Datensichtung ein einfaches PHP- Script für die MySQL-Variante geschrieben.

Files

Das Script infoOGDB.php (ausgepackt vom hier zur Verfügung gestellten WinZip- Archiv) und seine Schwesterroutine grafikOGDB.php müssen nur (bitte nach den Anweisungen aus dem README) in das Dokumenten-Verzeichnis des Apache-Servers kopiert werden und schon kann die installierte OpenGeoDB- Datenbank abgefragt werden (okay: Es wird erwartet, dass die MySQL- Verbindungsinformationen in der Datei conn.inc.php vorhanden sind)

Die Datei conn.inc.php liegt nicht vor? Der Inhalt der Datei lautet i.A.:

<? php
  // Alle Vierbuchstabenkette sind entsprechend zu ersetzen
  // z.B. ssss mit localhost
  $server="ssss";
  $user="uuuu";
  $pass="pppp";
  $dbase="dddd";
  $conn = mysql_connect($server, $user, $pass);
  if($conn) {
    mysql_select_db($dbase, $conn);
  }
?>

Für die Version 0.2.4d existiert auch eine Zusammenfassung aller Korrekturscripte, die den Datenbestand auf den neusten Stand bringen.

Ein erster Test ...

Ein kleines Beispiel zum Testen (Werbung muss sein :-)): Königswinter [id=19548] liegt im Landkreis Rhein-Sieg-Kreis [id=194], im Regierungsbezirk Köln [id=182], im Bundesland Nordrhein-Westfalen [id=117], in Deutschland [id=105] sowie in Europa [id=104]. Sie können Königswinter aber auch direkt suchen.

Version 0.4

Lage des KFZ-Kennzeichen SU In der vorliegenden Version können auch die Orte, die ein und dasselbe KFZ-Kennzeichen benutzen, grafisch darstellen werden. Da die vorhandenen Landkarten aus verschiedenen Gründen nicht für das Vorhaben optimal sind, habe ich dazu aus e00-Dateien (damalige Quelle www.geocomm.com existiert leider nicht mehr) die Umrisse der Länder in ein Bild transferiert. Die aus OpenGeoDB selektierten Daten werden als kleine rote Kreise in das Bild reinkopiert und dann das Bild dargestellt.

Hier ist z.B. eine solche Grafik für das Autokennzeichen SU.

Im Script grafikOGDB.php kann man über Konstanten einstellen, ob die angezeigten Daten auch tabellarisch angezeigt werden sollen oder ob ein Koordinatenkreuz eingezeichnet wird.

Version 0.5

Wie schon erwähnt ist jetzt eine Suche nach Texten möglich und die Darstellung der Tabelle geodb_hierarchies hat sich von einer einzeiligen Form mit Nummern auf eine mehrzeilige mit Namen geändert.


geodb_hierarchies:     Grafik anzeigen
LevelWert gültig vongültig bis
6Europa - immer -

Deutschland

Nordrhein-Westfalen

Köln

Rhein-Sieg-Kreis

Königswinter

Die hier nur unterstrichenen Wörter sind in Wirklichkeit Links, die bei Überfahren die Objektnummer zeigen.

Jedes Objekt kann durch Drücken des Links 'Grafik anzeigen' in der Kontrollkarte dargestellt werden (dazu werden alle Objekte unterhalb, die eine Koordinate besitzen, in der Karte als roter Kreis eingezeichnet)

Achtung: Bei den meisten Rechnern dürfte das Objekt "Europa" Laufzeitprobleme erzeugen, da einfach zu viele Punkte eingezeichnet werden müssen.

Version 0.6

In dieser Version werden auch Orte, die keine deutsche Beschreibung haben, angezeigt.

Version 0.8

In dieser Version werden Daten sowohl mit der Struktur 0.2.4 und 0.2.5 angezeigt. Es müssen dazu keine Konfigurationsänderungen vorgenommen werden.

Allerdings sind durch unabgestimmten Datenmodelländerungen die Grafik nicht mehr so ohne Weiteres möglich. Deshalb bleibt mein Server erstmal auf der Version 0.2.4d, da ich die hsitorischen Daten nicht verlieren will.

Version 0.9

In der vorliegenden Version werden Daten sowohl mit der Struktur 0.2.4 und 0.2.5 als auch der aktuellen Datenbank-Dump vom 28.02.2012 (im Verzeichnis (http://fa-technik.adfc.de/code/opengeodb/dump/) angezeigt. Es müssen dazu keine Konfigurationsänderungen vorgenommen werden.

Demonstration gefällig?

Ein "lebendiges" Beispiel biete jetzt auf meinen Datenserver an. Dort läuft allerdings noch weiterhin eine 0.2.4d- Variante, da in der aktuellen Version die historische Sicht verloren ging.

Kommentare , Anregung und Fehlerbeschreibungen dazu sind -wie immer- erwünscht. Sollte das Thema von allgemeinen Interesse sein: Ich lese auf die Mailingliste von OpenGeoDB mit.

Hinweis

Die Datenversion 0.2.5a hat seine Datenstruktur geändert, die erst durch die Version 0.8 anzeigen werden kann.

Die Koordinaten der PLZ sind in der aktuellen Liste nicht verwendbar (z.B. alle Berliner PLZ'en haben die gleiche Koordinate). Auch liegen manche Schweizer PLZ deutlich außerhalb der Schweiz. Bei Interesse zu diesem Thema können Sie sich gerne bei mir melden

Bekannte Fehler

  • Die Anzeige der Folgeobjekte setzt voraus, dass die Folgeobjekte auch dem nächsten Level existieren. Unter anderem im Bereich Schweiz ist diese nicht überall gegeben.
  • Das Koordinatenkreuz wird nicht an der korrekten Stelle eingezeichnet, wenn der untere, obere Punkt nicht eine Koordinate mit ganzzahligen Gradzahlen ist. Dieser Fehler kann allerdings nur auftreten, wenn Sie eine andere Karte verwenden, die mitgelieferte hat eine ganzzahlige Koordinate.
  • Erhalten Sie nach dem Abschnitt Folgeobjekte nur SQL-Fehlermeldungen mit immer der gleichen Zeilennummer, prüfen Sie bitte Ihre MySQL-Version. Laut Dokumentation kann MySQL ab Version 4.0.0 den verwendeten SQL-Befehl UNION, jedoch verarbeitet die Version 4.0.22 den verwendeten Befehlstring noch nicht korrekt. Eine Anpassung wäre möglich, aber da auch MySQL dringend zu einem Update auf eine höhere 4.x-Version rät, möchte ich die zusätzliche Belastung nicht als Standard implementieren.
  •