2016-08-11 2 views
0

Hintergrund: Ich bin wirklich neu. Informatica Developer für Powercenter Express Version: 9.6.1 HotFix 2Informatica ausführen SQL in SQL-Transformation

Ich möchte ein T-SQL-Anweisung als einen Schritt in einem Arbeitsablauf auszuführen:

truncate table dbo.stage_customer 

Ich habe versucht, eine Zuordnung erstellen, fügen Sie eine SQL-Transformation darauf. Eingabe über Abfrage im SQL-Abfragefenster. Ich habe das Mapping zu einem Workflow von nur Start, Mapping und Ende hinzugefügt. Als ich den Fluss zu validieren habe ich diesen Fehler:

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

Ich habe keine Ahnung, welche Ports, da diese benötigt werden (die Anweisung truncate) grundsätzlich Ein- oder Ausgang nicht braucht.

+0

Kurz gesagt: Sie tun es falsch. Informatica ist kein "Tool zum Ausführen einer SQL-Anweisung". Es ist ein ETL-Tool und kann verwendet werden, um Datenflüsse zu erstellen. Dazu benötigt es Quellen und Ports und Links. Es kann auch einige zusätzliche Anweisungen ausführen - aber es bedeutet nicht, dass Sie alle anderen Dinge wegwerfen können. – Maciejg

+0

nein, ich benutze es nicht nur für eine SQL-Anweisung, es ist ein Schritt in einem Arbeitsablauf, ich muss eine Tabelle abschneiden, füllen Sie diese Tabelle usw. – thotwielder

+0

In diesem Fall einfach eine Sitzungszieleigenschaft verwenden - oder eine Kombination von Pre/Post-SQL-Anweisungen, je nachdem, was für Sie am besten ist. – Maciejg

Antwort

0

Wenn Sie eine Zieltabelle vor dem Laden abschneiden möchten, warum verwenden Sie nicht die eingebaute Option in den Sitzungseigenschaften?

goto Workflow-Manager-> open Session-> Mapping tab-> klicken Sie auf Zieltabelle links Side- aufgelistet> wählen Sie die Eigenschaft „Kürzt Tabellenoption“ es nur aktivieren

Sie die Frage zu beantworten, ich glaube, Sie haben Verbinden Sie mindestens einen Eingabe- und Ausgabeport in die SQL-Umwandlung (weil es nicht nicht verbunden ist). Erstellen Sie einfach Dummy-Ports und versuchen Sie es erneut

diesen Artikel versuchen - click here

1

Verwenden Sie Ihre Abfrage in Pre-SQL-Befehl

+0

Ich kann den Befehl pre-sql nicht finden, in Mapping oder Workflow? Ich habe versucht, beide anzuschauen, habe aber keine gesehen. Ich verwende Express-Version btw – thotwielder

+0

ok, gefunden, dass in den Eigenschaften des Quellobjekts (Sicht lesen). Das könnte funktionieren. – thotwielder

1

Als Aswin vorgeschlagene Verwendung der eingebauten Option in der Sitzung "Tabelle dbo.stage_customer gestutzt" Eigentum.

In den Produktionsumgebungen kann der Benutzer den Tabellenzugriff für die Tabelle in einer Datenbank jedoch nicht abbrechen. In diesem Fall schlägt der informatica-Workflow fehl, wenn Sie die Option Zieltabellen abschneiden aktivieren. Es ist sinnvoll, eine gespeicherte Prozedur zum Abschneiden der Zieltabelle und zum Verwenden dieser gespeicherten Prozedur in der Informatica-Zuordnung zu verwenden, um Arbeitsablauffehler zu vermeiden, wenn der Benutzer keinen Zugriff auf die Datenbank abschneidet.

+0

Danke guten Punkt. – thotwielder