2010-01-19 2 views
0

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

У меня есть пакет SSIS, который считывает содержимое электронной таблицы Excel и выгружает информацию в таблицу базы данных. Это достаточно просто. Тем не менее, столбцы в электронной таблице, которые относятся к датам, иногда имеют нулевое значение «0». Если значение равно нулю, мне нужно преобразовать его в следующую дату; '12/31/9999 'и вставьте это значение в соответствующий столбец.

В настоящее время у меня есть задача потока данных, определенная с помощью источника Excel и назначения OLE DB. Мое предположение заключается в том, что мне нужно преобразовать поток данных между этими двумя задачами. Я просто не могу найти того, кто хочет работать. Я использую SQL Server 2005 и Visual Studio 2005.

Спасибо,

Эндрю

ответ

3

я собираюсь предположить, что ваш источник данных Excel имеет набор столбцов в качестве строки. Оттуда вы сможете использовать преобразование Derived Column.

Синтаксис для этого немного вялый. Это то, что я смог придумать с головы. Я посмотрю, есть ли эквивалент функции ISDATE(), поскольку это будет более надежным, чем просто проверка на «0».

my_string=="0" ? (DT_DBDATE)"12/31/9999" : (DT_DBDATE)my_string 
+0

Это сработало для меня. Я не мог найти функцию ISDATE в SSIS, сравнивая строки, которые работают достаточно хорошо для моих нужд. Благодарю. –

+0

Я рад, что это помогло. Поскольку, похоже, что вы новичок, если ответ работает на вас, тогда вы должны его принять (щелкните галочку рядом с ответом, чтобы он стал зеленым), чтобы другие могли быстро определить ответ на вопрос. –

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