2011-06-08 4 views
3

Я запускаю запрос по производству, и он возвращает мне 500 строк, и у меня есть такая же копия на моем dev, и запрос возвращает только 497 строк.Технология отладки Oracle для разницы в строках

Какой подход или шаги могут быть предприняты для сравнения результатов?

Есть ли инструмент?

ответ

4

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

SELECT list_of_columns 
    FROM some_table 
WHERE some_criteria 
MINUS 
SELECT list_of_columns 
    FROM [email protected]_link_to_dev 
WHERE some_criteria 

покажет вам строки, возвращаемые первого запроса, которые не имеют идентичные матч в строках вернулся из второго запроса. В идеале это покажет вам только три лишние строки. Но он может возвращать дополнительные строки, если данные, возвращаемые для некоторых столбцов, различаются в двух средах.

+0

Большое спасибо! У меня нет связи между этими базами данных, есть ли какая-либо другая техника, которая обычно используется? – kalls

+0

@kalls - Предполагая, что вы не можете создать ссылку на базу данных (которую я бы действительно нажал, если вы делаете такой анализ с любой регулярностью), вы всегда можете выгружать результаты производственного запроса в плоский файл, загружать что в новую таблицу в базе данных разработки, а затем выполните MINUS. Очевидно, что это намного больше, чем просто доступ к ссылке базы данных, но он может работать в крайнем случае. –

+0

Спасибо за плоский подход к файлам. Я буду держать вас в курсе. Еще раз спасибо. – kalls

2

Если вы можете сохранить результирующие наборы в плоских файлах, вы также можете получить копию бесплатного и открытого кода WinMerge utility и сравнить результаты. Это устраняет необходимость создания любых дополнительных объектов базы данных. Кроме того, WinMerge является ценным инструментом в своем собственном праве.

EDIT: Предполагая окна, конечно. Решение A * nix может быть разным.

+0

Да, это окна и WinMerge, я думал о файлах excel, поэтому не думал о WinMerge. Спасибо за эту информацию. – kalls

Смежные вопросы