powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Другие СУБД [игнор отключен] [закрыт для гостей] / Есть ли утилита сравнения dbf-файлов?
13 сообщений из 13, страница 1 из 1
Есть ли утилита сравнения dbf-файлов?
    #37702545
бУРов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть dbf-файлы. Они открываются DBF-навигатором.

Хотелось бы знать, существуют ли бесплатные утилиты для сравнения 2-х dbf-файлов?
...
Рейтинг: 0 / 0
Есть ли утилита сравнения dbf-файлов?
    #37702969
Khod
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
бУРов,

А не проще их в текст экспотрировать и сравнить текстовые файлы?
...
Рейтинг: 0 / 0
Есть ли утилита сравнения dbf-файлов?
    #37706670
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Слишком специфично. Да и критериев сравнения много. Проще в БД прогрузить и там используя операицию MINUS
выполнить всё что надо.
...
Рейтинг: 0 / 0
Есть ли утилита сравнения dbf-файлов?
    #37707546
ДохтаР
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonСлишком специфично. Да и критериев сравнения много. Проще в БД прогрузить и там используя операицию MINUS
выполнить всё что надо.


Я не вижу специфичности ,
в постановке автора достаточно будет diff и еще чуть чуть написать ( найти) утилиту ( 10 строк ) по отрезке хедера.

Выхоп diff разложить в завичимости от > < под 2 хедера ,
и получить 2 дбфника с отличающимися относительно основных записями.

Приблизительно так.
...
Рейтинг: 0 / 0
Есть ли утилита сравнения dbf-файлов?
    #37707548
ДохтаР
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На баше и С( утилита по отрезке) не напрягаясь с перекурами за пару тройку часов можно заговнокодить.
...
Рейтинг: 0 / 0
Есть ли утилита сравнения dbf-файлов?
    #37707758
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ДохтаРв постановке автора достаточно будет diff и еще чуть чуть написать ( найти) утилиту ( 10 строк ) по отрезке хедера.

diff работает на байтово-битовом уровне. DBF-это более сложная структура. И два DBF могут физически
отличаться (за счёт удалённых строк и пустот внутри) а логически быть одинаковыми.
...
Рейтинг: 0 / 0
Есть ли утилита сравнения dbf-файлов?
    #37708047
ДохтаР
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonДохтаРв постановке автора достаточно будет diff и еще чуть чуть написать ( найти) утилиту ( 10 строк ) по отрезке хедера.

diff работает на байтово-битовом уровне. DBF-это более сложная структура. И два DBF могут физически
отличаться (за счёт удалённых строк и пустот внутри) а логически быть одинаковыми.


Я про Юниксовый diff говорю.

man diff diff - compare files line by line

В дбанике строки разделяются переводом строки.

С удаленными строками все вроде просто они в неизменном виде попадут в разницу ,
потом тулза которая обрабатывает разницу может файлы спаковать.
Они в оригинале удаленные, и в разницу попадут удаленными.
Момент который я не учел раньше , это разный порядок строк в файлах , ну для этого
после отрезки хедеров можно обычным сортом упорядочить файлы.
прогнать через дифф , распарсить разницу , и подкинуть под хедеры.
...
Рейтинг: 0 / 0
Есть ли утилита сравнения dbf-файлов?
    #37708275
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ДохтаРМомент который я не учел раньше , это разный порядок строк в файлах , ну для этого
после отрезки хедеров можно обычным сортом упорядочить файлы.
прогнать через дифф , распарсить разницу , и подкинуть под хедеры.
Да ну... всё равно чугунный лапоть получается. Задача сравнения dbf файлов
как постановка - безсмысленна. Автору нужно сравнить контент который там
лежит. А это порождает постановку полноценного парсера dbf, операции
сортировки для ключа сравнения. И бог знает чего автор захочет завтра.
А вдруг ему надо будет еще и отчёт сформировать? Вобщем придём к концепции
создания еще одной rdbms. Да и сама постановка - туфта. Если нужен полноценый
аудит изменений то это делается в той точке, где данные зарождаются.
...
Рейтинг: 0 / 0
Есть ли утилита сравнения dbf-файлов?
    #37708726
ДохтаР
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonДа ну... всё равно чугунный лапоть получается. Задача сравнения dbf файлов
как постановка - безсмысленна.


Я как системный архитектор отреагировал , если кто то будет настаивать
что ему нужно сравнение ДБФ в технологическом процессе без всяких подробностей ,
я бы спроектировал эту часть так как описанно выше, затратил бы офциально 3 раб дня
из которых реально 1 час мой на разжовывание задачи нужным исполнителям,
3 -5 часов на чтение доки если кто то из них что то не знает ,
и 3-5 часов на реализцию с тестированием.

Если решение когото не устраивает в тех процессе ,
пусть ставят задачу правильно и начнем следующую итерацию.

Я по таким мелочным задачам не ввязывась в доказательства , что нужно делать по другому
я делаю так как просят. Формально ко мне и к решению придраться тяжело.
Потому как критерии сравнения не указыны. В бумажку меня не ткнут, что зделано не так.


Когда проект на месяцы , там уже можно поспорить что и как делать, зачем и кто кому что и сколько должен.

С момента появления топика , как раз прошли эти 3 дня.
...
Рейтинг: 0 / 0
Есть ли утилита сравнения dbf-файлов?
    #37745524
MBG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MBG
Гость
Достаточно сделать дамп и сравнить diff (консольный diff, tkdiff, etc.). Дамп делает, например, утилита

sqlite3-dbf - converter of XBase / FoxPro tables to SQLite

Отличающиеся строки можно залить в SQL СУБД для дальнейших манипуляций.
...
Рейтинг: 0 / 0
Есть ли утилита сравнения dbf-файлов?
    #37829443
alexvav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
бУРов, DBF Comparer – это метод для поиска дубликатов DBF файлов, если их поля данных не соответствуют или наоборот соответствуют.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Есть ли утилита сравнения dbf-файлов?
    #39366454
Марат56
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Когда мне понадобилась такая проверка, воспользовался утилитой "SQL Explorer" от Borland (можно использовать любую утилиту, позволяющую делать SQL запросы к таблицам .dbf и поддерживающую join). Следующий запрос выводит количество записей обеих таблиц и количество полностью совпадающих записей двух таблиц (в условии join должны быть перечислены все поля)

select '1.new ',count(*) from "new.dbf"
union
select '2.old ',count(*) from "old.dbf"
union
select '3.join',count(*) from "old.dbf" t1
join "new.dbf" t2 on
t1.field1=t2.field1 and
t1.field2=t2.field2 and
...
t1.fieldN=t2.fieldN

если значения не совпадают - таблицы содержат неодинаковые данные
...
Рейтинг: 0 / 0
Есть ли утилита сравнения dbf-файлов?
    #39370701
Garrick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KhodбУРов,

А не проще их в текст экспотрировать и сравнить текстовые файлы?
DBF и есть текстовый файл.
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Другие СУБД [игнор отключен] [закрыт для гостей] / Есть ли утилита сравнения dbf-файлов?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]