Beziehung hinzufügen (Data Management)

Diese ArcGIS 2.7-Dokumentation wurde archiviert und wird nicht mehr aktualisiert. Inhalt und Links sind möglicherweise veraltet. Verwenden Sie die aktuelle Dokumentation.

Zusammenfassung

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

Die Datensätze aus der Beziehungstabelle werden den Datensätzen aus der Eingabe 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.

Verwendung

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

  • Datensätze aus der Relate-Tabelle 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 ObjectID-Feld aufweisen. Die Beziehungstabelle muss kein ObjectID-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 Beziehungstabelle, auf denen die Beziehung basiert, kann zu einer Performance-Steigerung beitragen. Dies kann mit dem Werkzeug Attributindex hinzufügen erfolgen.

Syntax

arcpy.management.AddRelate(in_layer_or_view, in_field, relate_table, relate_field, relate_name, {cardinality})
ParameterErklärungDatentyp
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)

Die Beziehungsart.

  • ONE_TO_ONEGibt an, dass die Beziehung zwischen der Eingabetabelle und der in Beziehung stehenden Tabelle vom Typ "Eins-zu-eins" ist. Ein Datensatz in der Eingabetabelle weist beispielsweise nur einen übereinstimmenden Datensatz in der in Beziehung stehenden Tabelle auf.
  • ONE_TO_MANYGibt an, dass die Beziehung zwischen der Eingabetabelle und der in Beziehung stehenden Tabelle vom Typ "Eins-zu-viele" ist. Ein Datensatz in der Eingabetabelle kann beispielsweise mehrere übereinstimmende Datensätze in der in Beziehung stehenden Tabelle aufweisen. Dies ist die Standardeinstellung.
  • MANY_TO_MANYGibt an, dass die Beziehung zwischen der Eingabetabelle und der in Beziehung stehenden Tabelle vom Typ "Viele-zu-viele" ist. 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

NameErklärungDatentyp
out_layer_or_view

Das aktualisierte Eingabe-Dataset.

Tabellensicht; Raster-Layer; Mosaik-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
relate = arcpy.AddRelate_management("Parcel", "ParcelID", "owner_table", 
                                    "ParcelID", "Owner2Parcel")

Lizenzinformationen

  • Basic: Ja
  • Standard: Ja
  • Advanced: Ja

Verwandte Themen