Компонент TBatchMove

Этот компонент обеспечивает копирование данных из одной таблицы в другую. Основные свойства: Source — таблица (или запрос), откуда копируются данные, Destination — таблица, куда копируются данные, Mapping — определяет соответствие между колонками исходной и результирующей таблиц (для идентичных таблиц это свойство определять не обязательно), Mode — тип перемещения (batAppend — добавляет новые строки в результирующую таблицу, batUpdate — заменяет строки в результирующей таблице на соответствующие строки оригинала, batCopy — копирует строки в результирующую таблицу, переписывая ее, batDelete — удаляет записи в результирующей таблице, соответствующие записям оригинала), KeyViolTableName и ProblemTableName  — имена дополнительных таблиц для помещения записей, чье копирование запрещено правилами ссылочной целостности или по каким-либо причинам невозможно (например, из-за несоответствия типов данных), ChangedTableName  — имя таблицы для помещения измененных записей.

Копирование происходит при выполнении метода Execute. Отметим, что этот метод может быть вызван непосредственно из среды разработки с помощью контекстного меню компонента TBatchMove.

Чаще всего подобное копирование используется при смене сервера баз данных или при переносе desktop-приложения в архитектуру клиент/сервер. В этом случае возможно выявить нарушения ссылочной целостности в исходных таблицах и при необходимости отредактировать данные, связав с компонентами TTable управляющие элементы через соответствующие компоненты TDataSource. Пример подобного применеия этого компонента был приведен в предыдущей статье данного цикла.