- Beiträge: 6
Löschen von Daten auf Write-Seite aus READ-Seite
- KNAPP AG
- Autor
- Offline
- Benutzer
Weniger
Mehr
8 Jahre 9 Monate her #2632
von KNAPP AG
Löschen von Daten auf Write-Seite aus READ-Seite - Beitrag(2632) wurde erstellt von KNAPP AG
Hallo!
Wie lesen eine Exceldatei (read-Seite) mit KEY-Feldern aus und wollen auf der Write-Seite diese Sätze in der Oracle-DB löschen. Kann dazu der SQL-Befehl so variablel gestaltet werden um auf die Input-Datei zuzugreifen (delete from dsm9101 where MAT.read=dsm9101.mat and ZE.read=dsm9101.ZE) oder gibt es eine andere Funktion mit der diese Aufgabenstellung umgesetzt werden kann?
Wie lesen eine Exceldatei (read-Seite) mit KEY-Feldern aus und wollen auf der Write-Seite diese Sätze in der Oracle-DB löschen. Kann dazu der SQL-Befehl so variablel gestaltet werden um auf die Input-Datei zuzugreifen (delete from dsm9101 where MAT.read=dsm9101.mat and ZE.read=dsm9101.ZE) oder gibt es eine andere Funktion mit der diese Aufgabenstellung umgesetzt werden kann?
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- FlowHeater-Team
- Offline
- Administrator
8 Jahre 9 Monate her #2633
von FlowHeater-Team
gruß
Robert Stark
FlowHeater-Team antwortete auf Löschen von Daten auf Write-Seite aus READ-Seite - Beitrag(2633)
Standardmäßig generiert der FlowHeater nur INSERT oder UPDATE SQL Statements. Das von Ihnen geforderte kann aber über einen kleinen Umweg durchaus durchgeführt werden.
Sie benötigen dazu den SQL Heater sowie pro Schlüsselfeld (Key anhand die Daten gelöscht werden sollen) einen Set Parameter Heater . Die Parameter werden benötigt um im SQL Heater einen dynamischen DELETE FROM generieren zu können.
In diesem Fall müssen Sie den Parameter ID über den Set Parameter Heater zuweisen. Wichtig ist hier bei Zahlen eine Formatierung ohne Tausendertrennzeichen. Das können Sie einmal generell über den ersten WRITE Adapter auf dem Reiter Format als Standard festlegen oder aber über Menü->Bearbeiten->Parameter für jeden einzelnen Parameter separat zuweisen (siehe Screenshot 2).
Damit der WRITE Adapter keine Änderungen an der Tabelle vornimmt bzw. Datensätze anfügt, müssen Sie den Adapter noch so konfigurieren, dass dieser lediglich ein SQL Skript generiert. Hierzu aktivieren Sie im Adapter die Optionen „Daten hinzufügen“, „Keine Daten ändern oder hinzufügen nur SQL Skript generieren“, und „SQL Skript generieren“ (siehe Screenshot 3).
Wichtig ist, dass Sie dem Adapter mindestens ein Feld zuweisen, ohne funktioniert das Konstrukt leider nicht.
Sie benötigen dazu den SQL Heater sowie pro Schlüsselfeld (Key anhand die Daten gelöscht werden sollen) einen Set Parameter Heater . Die Parameter werden benötigt um im SQL Heater einen dynamischen DELETE FROM generieren zu können.
z.B. delete from IhreTabelle where ID = $ID$ (siehe Screenshot 1)
In diesem Fall müssen Sie den Parameter ID über den Set Parameter Heater zuweisen. Wichtig ist hier bei Zahlen eine Formatierung ohne Tausendertrennzeichen. Das können Sie einmal generell über den ersten WRITE Adapter auf dem Reiter Format als Standard festlegen oder aber über Menü->Bearbeiten->Parameter für jeden einzelnen Parameter separat zuweisen (siehe Screenshot 2).
Damit der WRITE Adapter keine Änderungen an der Tabelle vornimmt bzw. Datensätze anfügt, müssen Sie den Adapter noch so konfigurieren, dass dieser lediglich ein SQL Skript generiert. Hierzu aktivieren Sie im Adapter die Optionen „Daten hinzufügen“, „Keine Daten ändern oder hinzufügen nur SQL Skript generieren“, und „SQL Skript generieren“ (siehe Screenshot 3).
Wichtig ist, dass Sie dem Adapter mindestens ein Feld zuweisen, ohne funktioniert das Konstrukt leider nicht.
gruß
Robert Stark
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- KNAPP AG
- Autor
- Offline
- Benutzer
Weniger
Mehr
- Beiträge: 6
8 Jahre 9 Monate her #2635
von KNAPP AG
KNAPP AG antwortete auf Löschen von Daten auf Write-Seite aus READ-Seite - Beitrag(2635)
Danke für die Info. Wir haben nun versucht das nachzubauen und sind der Meinung, das richtig umgesetzt zu haben. Beim Ausführen wird keine SQL-Skript-Datei erzeugt und das Löschen auch nicht durchgeführt.
Wir wollen alle Zeilen des Files "PKN9101_löschen.csv" löschen und nichts zusätzlich auf der WRITE-Seite anlegen. Gibt es hierzu eine Möglichkeit, oder was machen wir falsch?
Wir wollen alle Zeilen des Files "PKN9101_löschen.csv" löschen und nichts zusätzlich auf der WRITE-Seite anlegen. Gibt es hierzu eine Möglichkeit, oder was machen wir falsch?
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- FlowHeater-Team
- Offline
- Administrator
8 Jahre 9 Monate her #2636
von FlowHeater-Team
gruß
Robert Stark
FlowHeater-Team antwortete auf Löschen von Daten auf Write-Seite aus READ-Seite - Beitrag(2636)
Durch die Einstellung „Keine Daten ändern oder hinzufügen nur SQL Skript generieren“ im WRITE Adapter werden keine Änderungen auf der WRITE Seite vorgenommen! Die Verbindung von READ -> WRITE wird benötigt, damit die FlowHeater Mechanismen sauber funktionieren. Ohne dieses Vorgehen würde die Satzweise Verarbeitung nicht greifen und der SQL Heater kann nicht pro
CSV
Satz ein DELETE Statement generieren.
Anhand der beigefügten Screenshots ist ersichtlich, dass der SQL Heater falsch konfiguriert ist. Sie müssen hier „Ausführen bei“ auf „pro Zeile/Satz“ stellen. Nur so wird pro CSV Satz der READ Seite auch ein SQL DELETE an die ODBC Datenquelle abgesetzt.
Sie schreiben dass bei Ihnen kein SQL Skript generiert wird? Erscheint eine Fehlermeldung oder gehen Sie davon aus, dass SQL DELETE Skripte generiert werden? Letzteres ist nicht der Fall, in das hier erwähnte Skript werden lediglich die normalen INSERT bzw. UPDATE Statements geschrieben.
Im Anhang finden Sie eine ungetestet Beispiel dazu.
Anhand der beigefügten Screenshots ist ersichtlich, dass der SQL Heater falsch konfiguriert ist. Sie müssen hier „Ausführen bei“ auf „pro Zeile/Satz“ stellen. Nur so wird pro CSV Satz der READ Seite auch ein SQL DELETE an die ODBC Datenquelle abgesetzt.
Sie schreiben dass bei Ihnen kein SQL Skript generiert wird? Erscheint eine Fehlermeldung oder gehen Sie davon aus, dass SQL DELETE Skripte generiert werden? Letzteres ist nicht der Fall, in das hier erwähnte Skript werden lediglich die normalen INSERT bzw. UPDATE Statements geschrieben.
Im Anhang finden Sie eine ungetestet Beispiel dazu.
gruß
Robert Stark
Anhänge:
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- KNAPP AG
- Autor
- Offline
- Benutzer
Weniger
Mehr
- Beiträge: 6
8 Jahre 9 Monate her #2642
von KNAPP AG
KNAPP AG antwortete auf Löschen von Daten auf Write-Seite aus READ-Seite - Beitrag(2642)
Hallo FlowHeater-Tem,
danke für eure flotte Hilfe. Wir haben leider die Insert-Info im Vorschaufenster falsch gedeutet
Liebe Grüße,
Lisa und Werner
danke für eure flotte Hilfe. Wir haben leider die Insert-Info im Vorschaufenster falsch gedeutet
Liebe Grüße,
Lisa und Werner
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
Ladezeit der Seite: 0.301 Sekunden