Параметр datetime команды SSIS SQL со смещением часового пояса - PullRequest
0 голосов
/ 16 февраля 2011

Я разрабатываю пакет служб SSIS для преобразования данных из базы данных SQL в другую базу данных SQL.Я использую источник OLE DB и Query записан как команда SQL.Я передаю параметр datetime, который будет считан через переменную SSIS из файла конфигурации XML.В файле конфигурации я устанавливаю дату как 16.02.2011, 2:00:00.Этот параметр используется в запросе от команды SQL для вставки / обновления данных после указанной даты.Когда я запускаю пакет служб SSIS, я не получаю правильные данные.Чтобы углубиться в это, я запустил SQL Profiler, чтобы проверить значение отправляемого параметра, и заметил, что всякий раз, когда вызывается запрос команды SQL, к параметру добавляется суффикс смещения (-08: 00).Есть ли способ не устанавливать смещение при запуске SSIS?

1 Ответ

0 голосов
/ 17 февраля 2011

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

Например: выберите FULLDATETIME, где FULLDATETIME = '12 / 5/2010 02:00:00 AM '

Я получаю следующий результат:

2010-12-05 02: 00: 00

Похоже, вы могли бы запрашивать поле datetimeoffset.Вам нужно будет скорректировать свое буквальное значение с помощью dateadd (), например, выбрать dateadd (mi, datediff (MI, getutcdate (), GETDATE ()), '16.02.2011 2:00:00 AM')

...