Zum Hauptinhalt springen
Weil einfach - produktiver ist

Der Daten Spezialist

Konvertieren Sie die Daten mühelos zwischen verschiedenen Formaten ohne Programmierkenntnisse dank Visual Designer. Effizient und super einfach.
Flowheater Chart

mySQL > Text - fortlaufend ausführen ID beachten

Mehr
10 Jahre 1 Monat her #1730 von Christoph
Hallo Herr Stark,
ich möchte aus einer mySQL Tabelle regelmäßig Daten in eine CSV Datei schreiben lassen. Das funktioniert soweit alles super. Der Aufruf erfolgt per Batch in regelmäßigen Abständen. Es sollen aber nur "neue" Daten exportiert werden.

Ich habe schon etwas überlegt, es könnte z. B. die letzte ID des letzten Datensatzes vom letzten Export für den nächsten Export verwendet werden, aber wie würde der temp. abgelegt?

Theoretisch wäre es auch denkbar, jedem exportiertem Datensatz in einer zusätzlichen Spalte noch eine Art Flag zu setzen?

Ist das mit Flowheater möglich?

Viele Grüße

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
10 Jahre 1 Monat her - 10 Jahre 1 Monat her #1731 von FlowHeater-Team
FlowHeater-Team antwortete auf mySQL > Text - fortlaufend ausführen ID beachten
Hallo Christan,

würde gehen, momentan benötigen Sie dazu noch einen Workaround über den File Heater zum temporären speichern der letzten ID in einer zusätzlichen Textdatei „last-export-id.txt„ sowie einem .NET Script Heater der während bzw. vor der Ausführung den letzten exportierten AutoID Wert aus dieser Textdatei liest und damit einen Parameter für die Einschränkung des SELECT auf der READ Seite setzt.

Klingt jetzt etwas kompliziert im Anhang finden Sie ein kleines Beispiel wie es geht. Das Beispiel verwendet anstatt einer MySQL Datenbank eine Accessdatenbank . So können Sie das Beispiel komplett ohne Änderung zum Test bei sich laufen lassen.

Beschreibung
  1. Auf der MySQL READ müssen Sie Ihren SELECT anpassen. z.B. select * from t_export where ID > $LAST-EXPORT-ID$ order by id
    Der Parameter $LAST-EXPORT-ID$ wird bei jedem Lauf dynamisch gesetzt. Wichtig ist, dass Sie anhand des AutoID Wertes sortieren!

  2. Damit der Parameter $LAST-EXPORT-ID$ vor jedem Lauf dynamisch geladen bzw. gesetzt wird, benötigen Sie einen .NET Script Heater. Das verwendete Skript finden Sie weiter unten bzw. im Beispiel. Wichtig ist hier, dass Sie im Skript „ausführen bei“ auf „Start“ stellen.

  3. Jetzt müssen Sie den FlowHeater noch beibringen, dass der letzte AutoID Wert in die Datei „last-export-id.txt“ geschrieben wird. Dazu verwende ich im Beispiel den File Heater. Dieser benötigt als Parameter einmal den Dateinamen sowie den eigentlichen Wert, der in die Datei geschrieben wird. Der Dateiname wird hier statisch über den X-Value Heater übergeben. Den AutoID Wert jage ich vorher noch in einen String Format Heater, dieser formatiert den Zahlenwert als Ganzzahl sowie ohne tausender Trennzeichen.

.NET Script Code
Code:
public object DoWork() { string lastID = "0"; // Datei mit dem letzten EXPORT AutoID Wert öffnen und lesen, wenn nicht vorhanden wird 0 verwendet. if (File.Exists("last-export-id.txt")) lastID = File.ReadAllText("last-export-id.txt"); // Parameter für den SELECT setzen Parameter["LAST-EXPORT-ID"].Value = lastID; return null; }


Dateianhang:

Dateiname: nur-neue-d...wert.zip
Dateigröße:11 KB

gruß
Robert Stark

Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.
Letzte Änderung: 10 Jahre 1 Monat her von FlowHeater-Team.

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
10 Jahre 1 Monat her #1732 von Christoph
Hallo Herr Stark,
perfekt, wie so oft eine super Lösung! Habe es schon ausprobiert und läuft!

Danke und Grüße!

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Ladezeit der Seite: 0.266 Sekunden
FlowHeater Logo

FlowHeater - Der Daten Spezialist

Effiziente Datenintegration und Transformation mit FlowHeater - Ihre Lösung für nahtlosen Datentransfer.

Rechtliches

Support & Kontakt

Kontaktinformation

Telefon:
0951 / 99339792

E-Mail:
Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein.


Copyright © 2009-2024 by FlowHeater GmbH. Alle Rechte vorbehalten.