Проблема формата даты при импорте из плоского файла в базу данных SQL - PullRequest
2 голосов
/ 16 февраля 2012

I Создан пакет служб SSIS, в котором данные извлекаются из простого файла и передаются в базу данных.

Но это имело запутанный и смешной эффект непоследовательной интерпретации дат. Любые даты, когда день был больше 12 числа месяца, будут правильными интерпретируется как дд / мм / гггг, но все, что меньше, было бы в обратном направлении.

Таким образом, 15.02.2012 будет правильно читаться как 15 февраля 2012 года.

Но 02/02/2012 с радостью будет интерпретировано как 2 сентября 2012 года.

1 Ответ

1 голос
/ 17 февраля 2012

Эта проблема встречается часто, и я встречался с ней много раз.

Прежде всего, проверьте, не установлен ли ваш язык SSIS для США.
Вам необходимо установить английский (United Kindom) или голландский (Нидерланды).
Для этого щелкните в любом месте вашего пакета служб SSIS, просмотрите свойства и установите LocaleID (в разделе «Разное»). В диспетчере соединений выберите соединение flat_source_file и измените LocaleID на панели свойств. Если это не поможет, сделайте следующее:

Я бы установил исходный столбец в «источнике плоских файлов» на string тип данных.
Затем используйте преобразование «Преобразование данных», чтобы преобразовать столбец даты в DT_DATE или DT_DBDate.

DT_DATE - это структура даты, состоящая из года, месяца, дня и часа.
DT_DBDATE - это структура даты, состоящая из года, месяца и дня.

Теперь используйте новый преобразованный столбец в окне назначения.

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