Beziehung hinzufügen (Data Management)

Zusammenfassung

Setzt einen Layer mit einem anderen Layer oder mit einer Tabelle basierend auf einem Feldwert in Beziehung. Feature-Layer, Tabellensichten, Subtype-Werte-Layer oder Subtype-Wertetabellen und Raster-Layer mit einer Raster-Attributtabelle werden unterstützt.

Die Datensätze im Parameterwert für Beziehungstabelle werden den Datensätzen im Eingabeparameterwert für Layer-Name oder Tabellensicht zugeordnet. Eine Übereinstimmung tritt auf, wenn das Eingabe-Beziehungsfeld und das Ausgabe-Beziehungsfeld gleich sind. Beziehungen ändern keine Daten, sie sind eine Eigenschaft des Layers bzw. der Tabelle.

Verwendung

  • Wenn es sich bei der Eingabe um eine Feature-Class oder einen Dataset-Pfad handelt, wird von diesem Werkzeug ein neuer Layer erstellt und mit dem Ergebnis des angewendeten Werkzeugs zurückgegeben.

  • Datensätze aus der Beziehungstabelle können mehr als einem Datensatz aus dem Eingabe-Layer oder der Tabellensicht zugeordnet werden.

  • Die Beziehungstabelle kann als eine Geodatabase-Tabelle oder eine dBASE-Datei erstellt werden. Die Beziehungstabelle muss kein Layer sein.

  • Die Eingabe muss ein Objekt-ID-Feld enthalten. Die Beziehungstabelle muss kein Objekt-ID-Feld enthalten.

  • Wenn Sie die Beziehung für ein anderes Projekt speichern möchten, speichern Sie den Layer mit dem Werkzeug In Layer-Datei speichern als Layer-Datei. Dies gilt jedoch nur für Layer. Tabellensichten können auf diese Weise nicht gespeichert werden.

  • Um eine permanente Beziehung zu erstellen, verwenden Sie das Werkzeug Beziehungsklasse erstellen.

  • Die Indizierung der Felder in dem Eingabe-Layer bzw. der Tabellensicht und der Beziehungstabelle, auf denen die Beziehung basiert, kann zu einer Performance-Steigerung beitragen. Dies kann mit dem Werkzeug Attributindex hinzufügen erfolgen.

  • Wenn der Eingabe-Layer eine Beziehung aufweist und die Eigenschaft Zugehörige Daten automatisch auswählen aktiviert ist, werden bei einer Auswahl im Eingabe-Layer auch Datensätze in der zugehörigen Tabelle ausgewählt.

Parameter

BeschriftungErläuterungDatentyp
Layer-Name oder Tabellensicht

Der Layer oder die Tabellensicht, mit dem bzw. der die Beziehungstabelle in Beziehung gesetzt wird.

Mosaic Layer; Raster Layer; Table View
Eingabe-Beziehungsfeld

Das Feld im Eingabe-Layer oder in der Tabellensicht, auf dem die Beziehung basiert.

Field
Beziehungstabelle

Die Tabelle oder Tabellensicht, mit der der Eingabe-Layer oder die Tabellensicht in Beziehung gesetzt wird.

Mosaic Layer; Raster Layer; Table View
Ausgabe-Beziehungsfeld

Das Feld in der Beziehungstabelle, das die Werte enthält, auf denen die Beziehung basiert.

Field
Name der Beziehung

Der eindeutige Name für eine Beziehung.

String
Beziehungsart
(optional)

Gibt die Beziehungsart an.

  • Eins-zu-EinsDie Beziehung zwischen der Eingabetabelle und der in Beziehung stehenden Tabelle ist vom Typ "Eins-zu-Eins". Ein Datensatz in der Eingabetabelle weist beispielsweise nur einen übereinstimmenden Datensatz in der in Beziehung stehenden Tabelle auf.
  • Eins-zu-VieleDie Beziehung zwischen der Eingabetabelle und der in Beziehung stehenden Tabelle ist vom Typ "Eins-zu-Viele". Ein Datensatz in der Eingabetabelle kann beispielsweise mehrere übereinstimmende Datensätze in der in Beziehung stehenden Tabelle aufweisen. Dies ist die Standardeinstellung.
  • Viele-zu-VieleDie Beziehung zwischen der Eingabetabelle und der in Beziehung stehenden Tabelle ist vom Typ "Viele-zu-Viele". Viele Datensätze mit demselben Wert in der Eingabetabelle können beispielsweise mehrere übereinstimmende Datensätze in der in Beziehung stehenden Tabelle aufweisen.
String

Abgeleitete Ausgabe

BeschriftungErläuterungDatentyp
Aktualisierte Eingabe-Layer oder -Tabellensicht

Das aktualisierte Eingabe-Dataset.

Table View; Raster Layer; Mosaic Layer

arcpy.management.AddRelate(in_layer_or_view, in_field, relate_table, relate_field, relate_name, {cardinality})
NameErläuterungDatentyp
in_layer_or_view

Der Layer oder die Tabellensicht, mit dem bzw. der die Beziehungstabelle in Beziehung gesetzt wird.

Mosaic Layer; Raster Layer; Table View
in_field

Das Feld im Eingabe-Layer oder in der Tabellensicht, auf dem die Beziehung basiert.

Field
relate_table

Die Tabelle oder Tabellensicht, mit der der Eingabe-Layer oder die Tabellensicht in Beziehung gesetzt wird.

Mosaic Layer; Raster Layer; Table View
relate_field

Das Feld in der Beziehungstabelle, das die Werte enthält, auf denen die Beziehung basiert.

Field
relate_name

Der eindeutige Name für eine Beziehung.

String
cardinality
(optional)

Gibt die Beziehungsart an.

  • ONE_TO_ONEDie Beziehung zwischen der Eingabetabelle und der in Beziehung stehenden Tabelle ist vom Typ "Eins-zu-Eins". Ein Datensatz in der Eingabetabelle weist beispielsweise nur einen übereinstimmenden Datensatz in der in Beziehung stehenden Tabelle auf.
  • ONE_TO_MANYDie Beziehung zwischen der Eingabetabelle und der in Beziehung stehenden Tabelle ist vom Typ "Eins-zu-Viele". Ein Datensatz in der Eingabetabelle kann beispielsweise mehrere übereinstimmende Datensätze in der in Beziehung stehenden Tabelle aufweisen. Dies ist die Standardeinstellung.
  • MANY_TO_MANYDie Beziehung zwischen der Eingabetabelle und der in Beziehung stehenden Tabelle ist vom Typ "Viele-zu-Viele". Viele Datensätze mit demselben Wert in der Eingabetabelle können beispielsweise mehrere übereinstimmende Datensätze in der in Beziehung stehenden Tabelle aufweisen.
String

Abgeleitete Ausgabe

NameErläuterungDatentyp
out_layer_or_view

Das aktualisierte Eingabe-Dataset.

Table View; Raster Layer; Mosaic Layer

Codebeispiel

AddRelate: Beispiel 1 (Python-Fenster)

Das folgende Skript für das Python-Fenster veranschaulicht, wie die Funktion AddRelate im unmittelbaren Modus verwendet wird.

import arcpy
arcpy.management.AddRelate("Parcel", "ParcelID", "owner_table", "ParcelID", 
                           "Owner2Parcel")

Verwandte Themen