Удалить строки (Управление данными)

Сводка

Удаляет все или выбранный поднабор строк из входных данных.

Если входными строками являются класс пространственных объектов или таблица, все строки будут удалены. Если входные строки из слоя или представления таблицы без выборки, удаляются все строки.

Использование

  • Параметр Входные строки может быть задан как таблица dBASE, таблица или класс объектов многопользовательской или файловой базы геоданных, либо как шейп-файл, слой или представление таблицы.

  • Если этот инструмент используется на векторных данных, будет удалена вся строка, включая геометрию.

  • Если слой или представление таблицы являются входными данными без выборки, удаляются все строки. Если входными данными является таблица, удаляются все строки.

    Примечание:

    Удаление всех строк из таблицы с большим их количеством может занять много времени. Если вы желаете удалить все строки из такой таблицы, то в этом случае предпочтительнее использовать инструмент Сократить таблицу. Обратитесь к документации инструмента Сократить таблицу и обратите внимание на предостережения по его использованию.

Синтаксис

arcpy.management.DeleteRows(in_rows)
ParameterОбъяснениеТип данных
in_rows

Класс пространственных объектов, слой, таблица или представление таблицы, строки которых будут удалены.

Table View

Производные выходные данные

NameОбъяснениеТип данных
out_table

Обновленные входные данные.

Представление таблицы

Пример кода

DeleteRows, пример 1 (окно Python)

Пример скрипта окна Python для использования функции DeleteRows в режиме прямого запуска.

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.CopyRows_management("accident.dbf", "C:/output/accident2.dbf")
arcpy.DeleteRows_management("C:/output/accident2.dbf")
DeleteRows, пример 2 (автономный скрипт)

Пример автономного скрипта Python, демонстрирующий выполнение функции DeleteRows по удалению строк на основе выражения.

# 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)

Информация о лицензиях

  • Basic: Да
  • Standard: Да
  • Advanced: Да

Связанные разделы