2016-08-11 3 views
0

Фон: Я действительно новый. Informatica Разработчик для PowerCenter Экспресс Версия: 9.6.1 HotFix 2informatica выполнить sql в sql преобразовании

Я хочу, чтобы выполнить T-SQL заявление в качестве одного шага в потоке работы:

truncate table dbo.stage_customer 

Я попытался создать отображение, добавить SQL преобразование в теме. Введите запрос выше в окне запроса sql. Я добавил отображение в рабочий процесс только начала, отображения и конца. Когда я проверить поток, я получил эту ошибку:

The group [Input] in transformation xxx must have at least one port 

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

+0

Коротко говоря: вы делаете это неправильно. Informatica не является «инструментом для запуска SQL-запроса». Это инструмент ETL и может использоваться для создания потоков данных. Для этого ему нужны источники, порты и ссылки. Он также может выполнять некоторые дополнительные заявления, но это не значит, что вы можете выбросить все остальное. – Maciejg

+0

Нет, я не использую его для запуска sql-оператора, это шаг в рабочем потоке, мне нужно будет обрезать таблицу, заполнить эту таблицу и т. Д. – thotwielder

+0

В этом случае просто используйте свойство целевой задачи - или комбинацию из пред/пост-SQL-операторов, в зависимости от того, что лучше для вас. – Maciejg

ответ

0

, если вы хотите усечь таблицу целей перед загрузкой, почему бы вам не использовать встроенный параметр, присутствующий в свойствах сеанса?

Гото рабочий Manager-> открыт session-> Отображение> Вкладка нажмите на целевой таблице перечислены влево бок-> выберите свойство «усечение вариант таблицы» просто включить его

ответить вам вопрос, я думаю, что у вас есть для подключения хотя бы одного входного и выходного портов в SQL-преобразование (потому что он не отключен). Просто создать фиктивный порты и повторите попытку

попробовать эту статью - click here

1

Используйте свой запрос «усечение таблицы dbo.stage_customer» в команде Pre-SQL

+0

Я не могу найти команду pre-sql, она в сопоставлении или рабочем процессе? Я пробовал смотреть на обоих, но не видел. Я использую экспресс-версию btw – thotwielder

+0

ok, нашел, что в свойствах исходного объекта (Read view). Это может сработать. – thotwielder

1

Как Aswin предложенного использования встроенной опции в сеансе имущество.

Но в производственных условиях пользователь может не иметь доступ к таблице усечения таблицы в базе данных. В этом случае рабочий процесс informatica не будет выполнен, если вы проверите опцию целевой таблицы усечения. Хорошо иметь хранимая процедура, чтобы обрезать целевую таблицу и использовать эту хранимую процедуру в информационном сопоставлении, чтобы избежать сбоев рабочего процесса в случае, если пользователь не имеет усеченного доступа к базе данных.

+0

Спасибо, хороший момент. – thotwielder