Zusammenfassung
Löscht alle Zeilen oder die ausgewählte Teilmenge der Zeilen aus der Eingabe.
Wenn die Eingabe-Zeilen von einer Feature-Class oder Tabelle stammen, werden alle Zeilen gelöscht. Wenn die Eingabe-Zeilen von einem Layer oder einer Tabellensicht ohne Auswahl stammen, werden alle Zeilen gelöscht.
Verwendung
Bei dem Parameter Eingabezeilen kann es sich um eine INFO- oder dBASE-Tabelle, eine Enterprise-, File- oder Personal-Geodatabase-Tabelle oder -Feature-Class, ein Shapefile, einen Layer oder eine Tabellensicht handeln.
Falls dieses Werkzeug auf Feature-Daten angewendet wird, wird die gesamte Zeile einschließlich der Geometrie gelöscht.
Wenn ein Layer oder eine Tabellensicht eingegeben wird, der bzw. die keine Auswahl enthält, werden alle Zeilen gelöscht. Wenn die Eingabe eine Tabelle ist, werden alle Features gelöscht.
Wenn Sie bei der Arbeit in ArcMap und der Verwendung eines Layers oder einer Tabellensicht mit Auswahl als Eingabe dieses Werkzeug in einer Editiersitzung verwenden, können Sie die Operation Zeilen löschen mithilfe von "Rückgängig"/"Wiederholen" rückgängig machen.
Ab ArcGIS Desktop 10.1 kann Zeilen löschen für nicht registrierte Tabellen nicht mehr verwendet werden.
Syntax
arcpy.management.DeleteRows(in_rows)
Parameter | Erklärung | Datentyp |
in_rows | Die Feature-Class, die Tabelle, die Tabellensicht oder der Layer, deren bzw. dessen Zeilen gelöscht werden. | Table View |
Abgeleitete Ausgabe
Name | Erklärung | Datentyp |
out_table | Die aktualisierte Eingabe. | Tabellensicht |
Codebeispiel
DeleteRows – Beispiel 1 (Python-Fenster)
Das folgende Skript für das Python-Fenster veranschaulicht, wie die Funktion DeleteRows im unmittelbaren Modus verwendet wird.
import arcpy
arcpy.env.workspace = "C:/data"
arcpy.CopyRows_management("accident.dbf", "C:/output/accident2.dbf")
arcpy.DeleteRows_management("C:/output/accident2.dbf")
DeleteRows – Beispiel 2 (eigenständiges Skript)
Das folgende eigenständige Skript veranschaulicht, wie Sie die Funktion DeleteRows zum Löschen von Zeilen basierend auf einem Ausdruck verwenden.
# Name: DeleteRows_Example2.py
# Description: Delete rows from a table based on an expression
# Import system modules
import arcpy
# Set environment settings
arcpy.env.workspace = "C:/data"
# Set local variables
inTable = "accident.dbf"
outTable = "C:/output/new_accident.dbf"
tempTableView = "accidentTableView"
expression = arcpy.AddFieldDelimiters(tempTableView, "Measure") + " = 0"
# Execute CopyRows to make a new copy of the table
arcpy.CopyRows_management(inTable, outTable)
# Execute MakeTableView
arcpy.MakeTableView_management(outTable, tempTableView)
# Execute SelectLayerByAttribute to determine which rows to delete
arcpy.SelectLayerByAttribute_management(tempTableView, "NEW_SELECTION", expression)
# Execute GetCount and if some features have been selected, then execute
# DeleteRows to remove the selected rows.
if int(arcpy.GetCount_management(tempTableView)[0]) > 0:
arcpy.DeleteRows_management(tempTableView)
Umgebungen
Lizenzinformationen
- Basic: Ja
- Standard: Ja
- Advanced: Ja