Quitar unión (Administración de datos)
Resumen
Quita una unión de una capa de entidades o de una vista de tabla.
Uso
-
El parámetro Unir es el nombre de la tabla que se unió a la capa de entrada o vista de tabla.
- Si la tabla de unión era un archivo dBASE llamado MyTable.dbf, el nombre de la unión será "MyTable"; por lo que para eliminarla, deberá especificar "MyTable".
- Si la tabla de unión era una Tabla INFO o de geodatabase llamada MyTable2, el nombre de unión sería "MyTable2", por lo que deberá especificar "MyTable2" para eliminarla.
- El nombre de unión no reflejará el nombre de la vista de tabla en sí, sino el origen de la vista de tabla. Por lo tanto, si una vista de tabla se llama TableView1 y apunta a mytable.dbf, el nombre de la unión será "mytable".
-
Cuando una capa se une con dos tablas y se quita la primera unión, se quitarán ambas uniones. Por ejemplo, Layer1 se une a TableA. Entonces, Layer1 se une a TableB. Si se quita la unión con TableA, también se quitará la unión con TableB.
-
Esta herramienta no está limitada al uso con ArcMap; trabaja con capas y vistas de tabla en otras aplicaciones y secuencias de comandos de ArcGIS. La herramienta Crear capa de entidades crea una capa a partir de una clase de entidad, y la herramienta Crear vista de tabla crea la vista de una tabla a partir de una tabla de entrada o clase de entidad. La capa o vista de tabla puede entonces utilizase como entrada en las herramientas Agregar unión y Quitar unión.
Sintaxis
Parámetro | Explicación | Tipo de datos |
in_layer_or_view |
Capa o vista de tabla de la que se quitará la unión. | Mosaic Layer; Raster Catalog Layer; Raster Layer; Table View |
join_name (Opcional) |
Unión que se quitará. | String |
Ejemplo de código
La siguiente secuencia de comandos de la ventana Python muestra cómo utilizar la herramienta RemoveJoin en el modo inmediato en ArcMap en una capa de entidades en la tabla de contenido llamado veglayer.
arcpy.RemoveJoin_management("veglayer", "vegtable")
Esta secuencia de comandos independiente muestra la función RemoveJoin como parte de un flujo de trabajo para agregar un campo a una tabla y calcular sus valores basándose en los valores de un campo de una tabla unida.
# AddFieldFromJoin.py # Description: Adds a field to a table, and calculates its values based # on the values in a field from a joined table # Import system modules import arcpy from arcpy import env try: # set the environments env.workspace = "C:/data" env.qualifiedFieldNames = "UNQUALIFIED" # Define script parameters inFeatures = "Habitat_Analysis.gdb/vegtype" layerName = "veg_layer" newField = "description" joinTable = "vegtable.dbf" joinField = "HOLLAND95" calcExpression = "!vegtable.VEG_TYPE!" outFeature = "Habitat_Analysis.gdb/vegjoin335" # Add the new field arcpy.AddField_management (inFeatures, newField, "TEXT") # Create a feature layer from the vegtype featureclass arcpy.MakeFeatureLayer_management (inFeatures, layerName) # Join the feature layer to a table arcpy.AddJoin_management (layerName, joinField, joinTable, joinField) # Populate the newly created field with values from the joined table arcpy.CalculateField_management (layerName, newField, calcExpression, "PYTHON") # Remove the join arcpy.RemoveJoin_management (layerName, "vegtable") # Copy the layer to a new permanent feature class arcpy.CopyFeatures_management (layerName, outFeature) except Exception, e: import traceback, sys tb = sys.exc_info()[2] print "Line %i" % tb.tb_lineno print e.message