Мы выполняем проект переноса данных из Informix в Oracle. Теперь возникло требование сравнить данные между таблицами Informix и Oracle. Поэтому Table1 из Informix будет перенесен в Table1 в Oracle.
Теперь данные переносятся из Table1
в Informix в Table1
в Oracle. Я беру данные из обеих таблиц в 2 плоских файла. Я просто хочу посмотреть, есть ли разница в данных в 2 файлах.
File1
скажем, 1 миллион записей с 300 столбцами и File2
скажем, 1 миллион записей с 300 столбцами. File1
и File2
- файлы с разделителями каналов. Так что разница может быть где угодно в файле. Может совпадать почти вся строка, но могут быть различия в одном / двух столбцах. Поэтому я хотел бы выяснить различия, имея в виду все вышеперечисленное. Разница вывода должна перечислять что-то вроде row1 in file1 is not matching with row1 in file2 at column 3
и значение столбцов из обоих файлов. Все такие отличия от обоих файлов должны быть перечислены на консоли в понятном для неспециалистов формате.
Я хочу просто объяснить это на примере, чтобы сделать его более понятным.
Мой первый файл, если он выглядит так:
col1|col2|col3|col4|col5|col6
1234|ramyakrishna|4567|ramya.krishna@worse.com|228802|worse
1235|Chandan|4567|chandan.kumar@worse.com|228862|worse
1236|Kacitha|4567|kacitha.mishra@worse.com|228872|worse
1238|Shajin|4567|shajin.mahesh@worse.com|228873|worse
Мой второй файл выглядит так:
col1|col2|col3|col4|col5|col6
1234|ramyakrishna|4567|ramya.krishna@good.com|228802|good
1235|Chandan|4567|chandan.kumar@worse.com|228789|worse
1236|Kacitha|4567|kacitha.mishra@worse.com|228872|worse
Так что, когда я сравниваю оба файла. Мы видим, что есть разница в col4
и col6
в row2
. Поэтому я хочу что-то вроде этого:
1234|ramyakrishna|4567|ramya.krishna@good.com|228802|good
:COL4-EXPECTED-ramya.krishna@worse.com:COL6-EXPECTED-worse
Таким образом, в вышеприведенном ряду второй файл должен быть напечатан Затем ожидаемые значения должны быть напечатаны.
Я знаю, что файлы должны быть отсортированы перед использованием любого сценария.
Для скрипта fge я получаю вывод, как показано ниже:
Я получаю вывод, как показано ниже
$perl diff.perl
Line 1: different value for column 38 (was g, expected w)
Line 1: different value for column 40 (was o, expected r)
Line 1: different value for column 41 (was d, expected s)
Line 1: different value for column 42 (was ., expected e)
Line 1: different value for column 43 (was c, expected .)
Line 1: different value for column 44 (was o, expected c)
Line 1: different value for column 45 (was m, expected o)
Line 1: different value for column 46 (was |, expected m)
Я хочу сравнение всего столбца. Файлы являются |
файлами с разделителями.