Сравнение наборов данных Oracle и SQL Server - PullRequest
2 голосов
/ 24 мая 2011

Я пытаюсь выполнить сравнение набора данных C # между двумя наборами данных из двух разных баз данных.Первый набор данных взят из Oracle, а второй - из SQL Server, и я сравниваю эти наборы данных после выполнения заданий ETL для перемещения данных из Oracle в SQL Server для проверки результатов.У меня проблема в том, что данные в SQL Server совпадают, но даты в разных форматах от источника к месту назначения, а также округление десятичной точки.

У кого-нибудь есть хороший способ обойти эту проблему.Я думал об изменении моих запросов из исходной и целевой таблиц, которые заполняют набор данных, для форматирования дат и т. Д., Поэтому сравнение будет проще, но я хотел посмотреть, есть ли другой способ?

1 Ответ

1 голос
/ 24 мая 2011

Для форматов даты установите переменную среды NLS_DATE_FORMAT в желаемый формат. Это предполагает, что вы ловите данные в строке. Oracle отформатирует дату в указанном вами формате. Для округления десятичной точки я не понимаю. Эти цифры должны быть одинаковыми. Если вы получаете десятичную точку и хотите запятую, используйте NLS_MUMERIC_CHARACTERS 'DG', чтобы выбрать, какой символ использовать десятичную точку или разделитель группы.

Например, «.,» Выбирает «.» для десятичной точки и запятой для разделителя групп.

Переменные среды могут быть установлены из клиентской ОС, а также из сеанса Oracle. Для этого наберите alter session set nls_date_format = 'YYYYMMDDHH24MISS'; или любой другой формат, который вам больше подходит.

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