Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 SSIS, нужно откорректировать значения в столбце  [new]
Rudge
Member

Откуда:
Сообщений: 274
Добрый день

Делаю импорт excel > ms db.

Имеется столбец в таблице excel - "Дата окончания договора". Там кроме положенной даты встречаются также текстовые значения(например "До истечения обязательств").
А мне нужно залить в таблицу, где соотв. столбец имеет тип datetime.
Каким toolbox-ом Data Flow Transformation сделать так, что если значение в стоблце не дата (if ISDATE() false), то значение в таких ячейках установить null ?

Data Conversion как я полагаю не поможет, т.к. при конвертации из DT_WSTR в DT_DATE ругнётся.
13 янв 12, 09:55    [11897146]     Ответить | Цитировать Сообщить модератору
 Re: SSIS, нужно откорректировать значения в столбце  [new]
Дедушка
Member

Откуда: Город трёх революций
Сообщений: 5116
производный столбец
13 янв 12, 10:22    [11897294]     Ответить | Цитировать Сообщить модератору
 Re: SSIS, нужно откорректировать значения в столбце  [new]
Rudge
Member

Откуда:
Сообщений: 274
Странно, Data Conversion не ругнулся. Сделал что надо.

Но вот вопрос всё-таки остался, каким тулбоксом обработать условие if ... then ?
13 янв 12, 10:23    [11897302]     Ответить | Цитировать Сообщить модератору
 Re: SSIS, нужно откорректировать значения в столбце  [new]
Rudge
Member

Откуда:
Сообщений: 274
Пробую через Derived Column.
В Expression отсутствует IsDate. Есть только IsNull. Как тип проверить?
13 янв 12, 10:56    [11897534]     Ответить | Цитировать Сообщить модератору
 Re: SSIS, нужно откорректировать значения в столбце  [new]
Rudge
Member

Откуда:
Сообщений: 274
up
14 янв 12, 10:38    [11903742]     Ответить | Цитировать Сообщить модератору
 Re: SSIS, нужно откорректировать значения в столбце  [new]
--__Александр__--
Member

Откуда:
Сообщений: 2631
Самый простой путь в лоб:
Заливаете из Excel в табличку на сервере данный как есть. Далее, Execute SQL Task с апдейтом пустого столбца на нужное новое значение.

А вообще, гугл на запрос "ssis check is date" выдает парочку результатов. Почитайте.
16 янв 12, 07:58    [11908563]     Ответить | Цитировать Сообщить модератору
 Re: SSIS, нужно откорректировать значения в столбце  [new]
Mgvlad
Member

Откуда: Минск
Сообщений: 97
--__Александр__--
Самый простой путь в лоб:
Заливаете из Excel в табличку на сервере данный как есть. Далее, Execute SQL Task с апдейтом пустого столбца на нужное новое значение.

А вообще, гугл на запрос "ssis check is date" выдает парочку результатов. Почитайте.


+100500. Пытаться чистить/преобразовывать данные в Data Flow - имхо изврат. Более того - чреватый глюками и проблемами.
Лучше грузить как есть и SQL тасками работать с данными (isdate, alter column, cast, convert - средств там море).
16 янв 12, 09:27    [11908719]     Ответить | Цитировать Сообщить модератору
 Re: SSIS, нужно откорректировать значения в столбце  [new]
Дедушка
Member

Откуда: Город трёх революций
Сообщений: 5116
Mgvlad,
да ну его этот t-sql... изврат, "чреватый глюками и проблемами"...
лучше вообще на клиенте всё трансформировать...

это я к тому, что просто нужно использовать то, что знаешь или наоборот знать, то, что используешь.
есть ETL и есть ELT дак вот ssis он ETL.
16 янв 12, 09:44    [11908775]     Ответить | Цитировать Сообщить модератору
 Re: SSIS, нужно откорректировать значения в столбце  [new]
--__Александр__--
Member

Откуда:
Сообщений: 2631
Дедушка
Mgvlad,
да ну его этот t-sql... изврат, "чреватый глюками и проблемами"...
лучше вообще на клиенте всё трансформировать...

это я к тому, что просто нужно использовать то, что знаешь или наоборот знать, то, что используешь.
есть ETL и есть ELT дак вот ssis он ETL.


С этим можно спорить ))
ИМХО, если сравнивать производительность SSIS как ETL и ELT, то оказывается, что как ELT он на порядок производительней.
Видимо, это связано пока с тем, что SSIS еще молодой продукт. И именно поэтому, пока Informatica и ODI популярнее ((.
16 янв 12, 10:55    [11909166]     Ответить | Цитировать Сообщить модератору
 Re: SSIS, нужно откорректировать значения в столбце  [new]
Ivan Durak
Member

Откуда: Minsk!!!
Сообщений: 3752
+1
SSIS хорошо умеет только одну вещь, взять и загрузить "как есть". Все остальное либо плохо, либо вообще никак.
16 янв 12, 13:33    [11910517]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить