Сравнить таблицы (Управление данными)

Краткая информация

Сравнивает две таблицы или два представления таблицы.

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

  • Этот инструмент выдает сообщение с результатами сравнения. По умолчанию инструмент прекращает работу после обнаружения первого различия между входными данными. Чтобы получить информацию о всех различиях, включите параметр Продолжить сравнение.

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

  • Этот инструмент может сообщать о различиях и сходствах в табличных значениях и определениях полей.

  • Могут быть определены несколько полей для сортировки. Значения параметров Исходная таблица и Тестовая таблица сортируются на основе заданных полей. Сортируется первое поле, затем второе, и т.д. в порядке возрастания. Сортировка по общему полю и в исходной и в тестовой таблице гарантирует, что вы сравниваете ту же строку из каждого набора данных.

  • По умолчанию, параметр Тип сравнения установлен на Все. Это означает, что будут проверены все свойства сравниваемых таблиц, включая свойства и атрибуты полей. Задайте другой тип сравнения, чтобы сравнить определенные свойства.

  • Параметр Игнорировать опции позволяет пропускать определенные свойства при сравнении. К ним относятся свойства расширения, подтипы и классы отношений.

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

  • Атрибутивные допуски могут быть определены только для числовых типов полей.

  • Значение параметра Выходной файл сравнения будет содержать все сходства и различия между значениями параметров Исходная таблица и Тестовая таблица. Это текстовый файл с запятой в качестве разделителя, который можно просмотреть и использовать как таблицу в ArcGIS. Например, он может потребоваться для получения значений идентификаторов объектов для всех строк, которые различаются.

  • При использовании этого инструмента в Python получите статус сравнения из возвращенного объекта Result, используя положение индекса 1.(result[1]). Значение будет равно 'true', если не было найдено различий, и 'false' – если различия были обнаружены.

    Дополнительные сведения об инструментах в Python

Параметры

ПодписьОписаниеТип данных
Исходная таблица

Данные, которые будут сравниваться со значением параметра Тестовая таблица. Значение этого параметра представляет собой данные, которые считаются корректными. Эти базовые данные имеют правильное содержание и информацию.

Table View; Raster Layer
Тестовая таблица

Данные, которые будут сравниваться со значением параметра Исходная таблица. Значение этого параметра представляет собой данные, в которые внесены изменения при редактировании или компиляции новой информации.

Table View ; Raster Layer
Поля сортировки

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

Value Table
Тип сравнения
(Дополнительный)

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

  • ВсеБудут сравниваться все свойства. Это значение по умолчанию
  • Только атрибутыСравниваются только атрибуты и их значения.
  • Только схемаБудет сравниваться только схема.
String
Игнорировать опции
(Дополнительный)

Задает свойства таблицы, которые не будут сравниваться.

  • Игнорировать свойства расширенияСвойства расширения сравниваться не будут.
  • Не сравнивать подтипыПодтипы сравниваться не будут.
  • Не сравнивать классы отношенийКлассы отношений сравниваться не будут.
  • Игнорировать псевдонимы полейПсевдонимы полей сравниваться не будут.
String
Допуск атрибутов
(Дополнительный)

Числовое значение, задающее диапазон, в котором значения будут считаться идентичными. Этот параметр используется только для числовых полей.

Value Table
Пропустить поля
(Дополнительный)

Одно или несколько полей, которые будут пропущены в процессе сравнения. Свойства и значения данных полей будут проигнорированы.

String
Продолжить сравнение
(Дополнительный)

Определяет, будет ли продолжаться сравнение после обнаружения первого различия между входными данными.

  • Не отмечено — инструмент прекращает работу после обнаружения первого различия. Это значение по умолчанию
  • Отмечено — инструмент продолжает работу после обнаружения первого различия.

Boolean
Выходной файл сравнения
(Дополнительный)

Выходной файл будет хранить информацию обо всех совпадениях и отличиях входных данных. Это текстовый файл с запятой в качестве разделителя, который можно просмотреть и использовать как таблицу в ArcGIS.

Выходной файл будет хранить информацию обо всех совпадениях и отличиях входных данных. Это текстовый файл с запятой в качестве разделителя, который можно просмотреть и использовать как таблицу в ArcGIS.

File

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

ПодписьОписаниеТип данных
Статус сравнения

Статус сравнения будет 'true', если не было найдено различий, и 'false' – если различия были обнаружены.

Boolean

arcpy.management.TableCompare(in_base_table, in_test_table, sort_field, {compare_type}, {ignore_options}, {attribute_tolerances}, {omit_field}, {continue_compare}, {out_compare_file})
ИмяОписаниеТип данных
in_base_table

Данные, которые будут сравниваться со значением параметра in_test_table. Значение этого параметра представляет собой данные, которые считаются корректными. Эти базовые данные имеют правильное содержание и информацию.

Table View; Raster Layer
in_test_table

Данные, которые будут сравниваться со значением параметра in_base_table. Значение этого параметра представляет собой данные, в которые внесены изменения при редактировании или компиляции новой информации.

Table View ; Raster Layer
sort_field
[sort_field,...]

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

Value Table
compare_type
(Дополнительный)

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

  • ALLБудут сравниваться все свойства. Это значение по умолчанию
  • ATTRIBUTES_ONLYСравниваются только атрибуты и их значения.
  • SCHEMA_ONLYБудет сравниваться только схема.
String
ignore_options
[ignore_options,...]
(Дополнительный)

Задает свойства таблицы, которые не будут сравниваться.

  • IGNORE_EXTENSION_PROPERTIESСвойства расширения сравниваться не будут.
  • IGNORE_SUBTYPESПодтипы сравниваться не будут.
  • IGNORE_RELATIONSHIPCLASSESКлассы отношений сравниваться не будут.
  • IGNORE_FIELDALIASПсевдонимы полей сравниваться не будут.
String
attribute_tolerances
[[Field, {Tolerance}],...]
(Дополнительный)

Числовое значение, задающее диапазон, в котором значения будут считаться идентичными. Этот параметр используется только для числовых полей.

Value Table
omit_field
[omit_field,...]
(Дополнительный)

Одно или несколько полей, которые будут пропущены в процессе сравнения. Свойства и значения данных полей будут проигнорированы.

String
continue_compare
(Дополнительный)

Определяет, будет ли продолжаться сравнение после обнаружения первого различия между входными данными.

  • NO_CONTINUE_COMPAREИнструмент прекращает работу после обнаружения первого различия. Это значение по умолчанию
  • CONTINUE_COMPAREИнструмент продолжает работу после обнаружения первого различия.
Boolean
out_compare_file
(Дополнительный)

Выходной файл будет хранить информацию обо всех совпадениях и отличиях входных данных. Это текстовый файл с запятой в качестве разделителя, который можно просмотреть и использовать как таблицу в ArcGIS.

File

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

ИмяОписаниеТип данных
compare_status

Статус сравнения будет 'true', если не было найдено различий, и 'false' – если различия были обнаружены.

Boolean

Пример кода

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

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

import arcpy
arcpy.management.TableCompare(
    r'c:\Workspace\wells.dbf', r'c:\Workspace\wells_new.dbf', 'WELL_ID', 
    'ALL', 'IGNORE_EXTENSION_PROPERTIES', 'WELL_DEPTH 0.001', '#', 
    'CONTINUE_COMPARE', r'C:\Workspace\well_compare.txt')
TableCompare , пример 2 (автономный скрипт)

Следующий пример демонстрирует, как использовать функцию TableCompare в автономном скрипте.

# Name: TableCompare.py
# Description: Compare two dBASE tables and return comparison result.

# Import system modules 
import arcpy

# Set local variables
base_table= "C:/Workspace/wells.dbf"
test_table = "C:/Workspace/wells_new.dbf"
sort_field = "WELL_ID"
compare_type = "ALL"
ignore_option = "IGNORE_EXTENSION_PROPERTIES"
attribute_tolerance = "WELL_DEPTH 0.001"
omit_field = "#"
continue_compare = "CONTINUE_COMPARE"
compare_file = "C:/Workspace/well_compare.txt"

# Process: FeatureCompare
compare_result = arcpy.management.TableCompare(
    base_table, test_table, sort_field, compare_type, ignore_option, 
    attribute_tolerance, omit_field, continue_compare, compare_file)

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