Hallo zusammen,
ich arbeite mit ArcGIS 9.1. Ich habe ein Linienshape mit entsprechenden Abschnittsnummern und eine Access-Datenbank mit einer Tabelle, die ebenfalls diese Abschnittsnummern enthält und zusätzlich noch weitere Informationen. Da die Tabelle in ArcMap nur als Tabelle und nicht graphisch dargestellt wird (es sind keine Rechts- und Hochweret enthalten), möchte ich sie mit den Daten des Linienshapes verknüpfen (über die Abschnittsnummer), um auch die Daten der Access-Datei sichtbar machen zu können. Ich habe es über die Funktion Verbindungen und Beziehungen versucht. Leider ohne Ergebnis. Die Attributtabelle des Shapes ist nach der Durchführung dieser Befehle leer und es kommt folgende Fehlermeldung: Daten konnten aus der Datenquelle nicht geladen werden. Falls Sie das Problem beheben können, klicken Sie auf aktualisieren, um die Daten erneut zu laden. Mögliche Ursachen des Problems können sein:mangelhafte Netzverbindung, ungültiges Feld usw.. An der Netzverbindung kann es nicht liegen. Ich habe bereits eine neue Spalte mit anderem Namen und gleichen Inhalten für die Abschnittsnummern gewählt; das half auch nichts.
Zusätzlich habe ich die Tabelle der Access-Datenbank in eine dBase-Tabelle umgewandelt. Das hat auch nicht funktioniert.
Hat jmd eine Idee, wo der Fehler liegt bzw. wie man es über einen anderen Weg versuchen kann?
Ich freue mich über jeden Hinweis! Danke schon mal!
Viele Grüße, Sabrina
ich arbeite mit ArcGIS 9.1. Ich habe ein Linienshape mit entsprechenden Abschnittsnummern und eine Access-Datenbank mit einer Tabelle, die ebenfalls diese Abschnittsnummern enthält und zusätzlich noch weitere Informationen. Da die Tabelle in ArcMap nur als Tabelle und nicht graphisch dargestellt wird (es sind keine Rechts- und Hochweret enthalten), möchte ich sie mit den Daten des Linienshapes verknüpfen (über die Abschnittsnummer), um auch die Daten der Access-Datei sichtbar machen zu können. Ich habe es über die Funktion Verbindungen und Beziehungen versucht. Leider ohne Ergebnis. Die Attributtabelle des Shapes ist nach der Durchführung dieser Befehle leer und es kommt folgende Fehlermeldung: Daten konnten aus der Datenquelle nicht geladen werden. Falls Sie das Problem beheben können, klicken Sie auf aktualisieren, um die Daten erneut zu laden. Mögliche Ursachen des Problems können sein:mangelhafte Netzverbindung, ungültiges Feld usw.. An der Netzverbindung kann es nicht liegen. Ich habe bereits eine neue Spalte mit anderem Namen und gleichen Inhalten für die Abschnittsnummern gewählt; das half auch nichts.
Zusätzlich habe ich die Tabelle der Access-Datenbank in eine dBase-Tabelle umgewandelt. Das hat auch nicht funktioniert.
Hat jmd eine Idee, wo der Fehler liegt bzw. wie man es über einen anderen Weg versuchen kann?
Ich freue mich über jeden Hinweis! Danke schon mal!
Viele Grüße, Sabrina
- Anmelden oder Registieren, um Kommentare verfassen zu können
Gespeichert von Rena am Di., 03.01.2012 - 15:21
Permalinkprüf doch erst mal, ob die "Verknüpfungsfelder" auch tatsächlich das gleiche Datenformat haben. In der Attributtabelle könnten die Zahlen z.B. als Textfeld vorliegen, in der Access(oder dbf-)Tabelle als echte Zahl. Auch können Ganzzahlfelder (meist Long Integer) nicht mit Gleitkommafeldern (Double) verknüpft werden.
Probleme kann es auch geben wenn eine Tabelle in einem anderen Programm (Excel, mit Access hab ich weniger Erfahrung) geöffnet ist.
Grüße
Rena
Gespeichert von Brizzi am Di., 03.01.2012 - 15:43
Permalinkdanke für deine Nachricht! Daran liegt es vermutlich leider nicht. In der Attributtabelle handelte es sich um das Datenformat "double" und in der dBAse bzw. Access war die Spalte als "Zahl" fomatiert. Aber auch, wenn ich die Abschnittsnummern in der Atrributtabelle in eine neue Spalte kopiere und als "Short Integer" oder "Long Integer" darstelle, funktioniert es nicht...
Danke trotzdem!
Gespeichert von Brizzi am Mi., 04.01.2012 - 14:50
PermalinkGespeichert von Kasparz am Mi., 04.01.2012 - 15:24
PermalinkPrüfe mal bitte:
-in der Access-Tabelle die mit einem Shape verknüpft werden soll, dürfen keine Felder mit dem Datentyp Memo enthalten sein.
-die Feldnahmen dürfen nur Buchstaben und Zahlen und den Unterstrich "_" enthalten.
-Die Feldnahmen sollten nicht mit Zahlen sondern nur mit Buchstaben beginnen. das die Datentypen gleich sein müssen wurde ja schon gesagt.
-Bitte beachte auch, daß die Verbindung eine 1:1 Verbindung ist.
-Im Zweifelsfall auch mal beide Spalten ins Textformat umwandeln und dann testen.
Sven
Gespeichert von Brizzi am Mi., 04.01.2012 - 16:45
Permalinkdanke für deine Nachricht!
- Datentyp Memo ist nicht vorhanden.
- Feldnamen sind auch ok
- im Textformat funktioniert es auch nicht.
Das Problem könnte tatsächlich an der Verbindung liegen. Die Tabelle der Access-Datenbank enthält mehr Werte (Zeilen) als die Atrributtabelle des Shapes. Aber jetzt manuell alle Werte zu entfernen, die in der Access-Tabelle zusätzlich sind, wäre machbar, aber ziemlich mühsam (ca. 2000 Werte).
Ich dachte bisher, dass auch n:1-Verbindungen möglich wären...
Kann man das Problem irgendwie lösen?
Gespeichert von Maxilla am Mi., 04.01.2012 - 17:47
Permalinkja, n:1 geht auch. Kannst du ansonsten alle in diesem Artikel aufgeführten Fehlerquellen ausschließen:
"Why does the attribute table have Null or empty values after a join?"
Gruß, Mx.
Gespeichert von Brizzi am Do., 05.01.2012 - 11:16
Permalinkdanke für die Tipps.
Ich konnte die Fehlerquellen ausschließen und habe es jetzt noch mal versucht, indem ich eine OLE DB Verknüpfung erstellt habe. Leider ist die Atributtabelle beim Verknüpfen immer noch leer...
Danke trotzdem und viele Grüße!
Gespeichert von Kasparz am Do., 05.01.2012 - 12:03
Permalinkhm...
passen zu mindestens die Join-Felder zusammen?
Ich hab auch hin und wieder solche Fälle. Das teste ich dann im Access. Shape in Personal-Geodatabase importieren. Diese dann im Access öffnen und Attribut-Tabelle des Linienthemas und die Sach-Tabelle in eine Abfrage laden und nur die beiden Join-Felder abfragen: Hier alle drei Varianten testen: Inner-, Left- und Right-Join. Spätestens hier zeigt sich, ob es mit den Daten klappt, ob zu allen Geodatensätzen Sachdatensätze existieren oder nicht, oder ob der Join überhaupt möglich ist.
An Dieser Stelle findet man auch heraus (Gruppierung) welche Geo- und Sachdatensätze mehrfach vorkommende ID's haben.
Klappt es an der Stelle, kann es nur noch einer folgenden Fehlerquellen sein:
-reservierte Wörter im Feldnamen
-nicht zulässige Zeichen in Feldnamen
-Memofelder
...ect... was Maxilla gepostet hat
Meine persönliche Erfahtung ist, daß die Verwendung eines individuellen Idents zum Join besser ist als reine Zahlenwerte. Der eigene Ident ist dann eine alphanumerische Zeichenkette die im Shape und in der Sachdatentabelle auf die gleiche Art-und Weise gebildet werden.
Sven
Gespeichert von Brizzi am Mo., 09.01.2012 - 11:46
Permalinkdank für deine Antwort! Tatsächlich sehe ich schon bei der Abfrage, dass es nicht funktionieren kann, ich werde jetzt also noch mal alle möglichen Fehlerquellen durchgehen.
Danke an alle für die Tipps.
Gruß, Sabrina
Gespeichert von Brizzi am Di., 10.01.2012 - 12:35
PermalinkGespeichert von Brizzi am Mi., 22.02.2012 - 16:22
Permalink