Dynamischer Daten Import / Export

datenbank

weil Einfach - produktiver ist
Mit der Freeware Version können bis zu 10.000 Datensätze verarbeitet werden!
Willkommen, Gast
Benutzername: Passwort: Angemeldet bleiben:
Willkommen im FlowHeater Support Forum!

Hier werden Fragen zum Umgang mit dem FlowHeater beantwortet.

THEMA: mySQL > mySQL Probleme bei Datenübertragung

mySQL > mySQL Probleme bei Datenübertragung 4 Jahre 9 Monate her #819

  • Christoph
  • Christophs Avatar
  • Offline
  • Junior Member
  • Beiträge: 20
Hallo zusammen,
ich möchte Preisdaten aus einer CSV in eine mySQL Tabelle einfügen.

Aufbau: Artikelnummer, Preis1, Preis2, Preis3

Da sich die einzelnen Preise in verschiedenen Tabellen befinden habe ich mir folgenden Ablauf ausgedacht:

Zuerst die CSV Tabelle in eine temporäre Tabelle im mysql speichern.

Anschließend Preis 1 in einer Tabelle mit mySQL zu mySQL updaten.

Die Abfrage im Readadapter sieht dazu so aus:

SELECT tmp_flowheater_update.Artikel_Nr, tmp_flowheater_update.VK, products.products_id
FROM `tmp_flowheater_update`
LEFT JOIN products ON products.products_model = tmp_flowheater_update.Artikel_Nr

auf der Write Seite werden die Daten einfach übergeben.

Das funktioniert aber leider nicht. Bei der Ausführung steigt der Flowheater nach einiger Zeit aus, ohne dass Daten geändert wurden.


In den Tabellen befinden sich über 200.000 Datensätze

kann es sein, dass Flowheater mit so vielen Datensätzen nicht arbeiten kann?
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Aw: mySQL > mySQL Probleme bei Datenübertragung 4 Jahre 9 Monate her #821

  • FlowHeater-Team
  • FlowHeater-Teams Avatar
  • Offline
  • Administrator
  • Beiträge: 1099
In den Tabellen befinden sich über 200.000 Datensätze kann es sein, dass Flowheater mit so vielen Datensätzen nicht arbeiten kann?
Hier gibt es einige die im Datawarehouse Bereich deutlich mehr Datensätze mit dem FlowHeater bearbeiten :)

Welche Fehlermeldung erscheint denn bei Ihnen? Wenn keine Fehlermeldung erscheint und es werden keine Datensätze verarbeitet, hat vermutlich Ihr SQL Select keine Daten ermittelt. In diesem Fall prüfen Sie mal (z.B. mit dem MySQL Command Line Client) ob Ihre Abfrage bzw. der JOIN die richtigen Daten ermittelt.

Ich denke der JOIN der Felder Model und Artikel_NR passt nicht zusammen? So wird zwar etwas am MySQL Server ausgeführt, das Ergebnis ist eine Leere Datenmenge und der FlowHeater hat nichts zu tun.
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.
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Aw: mySQL > mySQL Probleme bei Datenübertragung 4 Jahre 9 Monate her #823

  • Christoph
  • Christophs Avatar
  • Offline
  • Junior Member
  • Beiträge: 20
Hallo Herr Stark,
vielen Dank für Ihre Antwort.

Die Fehlermeldung lautet:
"Lost connection to MySQL server during query"

Die Abfrage funktioniert prinzipiell schon, ich vermute aber, dass dadurch mit Flowheater auf einmal eine Tabelle von 200.000 x 200.000 aufgebaut wird, was der mySQL Server evtl. nicht packt?

Ich vermute, dass zu jeder Zeile nur ein Datensatz "gesucht/ gematched" werden darf.


Jetzt habe ich die Abfrage auf der Read-Seite etwas umgebaut:

SELECT products.products_id, tmp_flowheater_update.VK
FROM `products`
LEFT JOIN tmp_flowheater_update ON products.products_model = tmp_flowheater_update.Artikel_Nr

Die Daten werden jetzt auch beim click auf die Lupe angezeigt.

Die Fehlermeldung "Lost connection to MySQL server during query" kommt aber trozdem noch nach einiger Zeit.


Als Workarround habe ich jetzt noch einen Zwischenschritt (CSV Export) eingefügt.

CSV > temp SQL
temp SQL match products_ID > temp CSV_ID
temp CSV_ID > SQL

So funktioniert das ganze zwar prinzipiell, aber die Lösung mySQL > mySQL direkt wäre natürlich schon viel einfacher.


Vielen Dank für Ihre Unterstützung
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Aw: mySQL > mySQL Probleme bei Datenübertragung 4 Jahre 9 Monate her #824

  • FlowHeater-Team
  • FlowHeater-Teams Avatar
  • Offline
  • Administrator
  • Beiträge: 1099
Tritt die Fehlermeldung nach ca. 3 Minuten auf? Wenn ja dann greift hier der CommandTimeout. Den können Sie über die Adapter Eigenschaften im Designer weiter nach oben setzen.

Ansonsten sollte auch der MySQL Server diese Datenmengen ebenfalls ohne Probleme verarbeiten können.

Ich verstehe nicht ganz warum Sie die CSV Datei nicht direkt in die betroffene Tabelle importieren? Ist in der Tabelle nicht die Artikelnummer der Primary Key können Sie das im FlowHeater auch umstellen. Dazu müssen Sie nur im MySQL Configurator auf dem Reiter "Felder und Datentypen" das Feld mit dem Primary Key anklicken und den Hacken bei der CheckBox für den Primary Key entfernen. Dann klicken Sie auf das Feld das die Artikelnummer enthält und aktivieren die CheckBox für den Primary Key.

Hinweis: Hiermit wird nicht der Primary Key auf der Tabelle geändert, Sie teilen dem FlowHeater lediglich mit, dass Updates über diesen Feldinhalt durchgeführt werden sollen (WHERE Artikelnummer = 'CSV Datei Artikelnummer')

Achtung: Wenn Sie den Primary Key ändern, kann es vorkommen, dass mehr als ein Datensatz pro CSV Zeile aktualisiert wird! Der FlowHeater generiert in diesem Fall eine Warnung.
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.
Der Administrator hat öffentliche Schreibrechte deaktiviert.
Moderatoren: FlowHeater-Team
Ladezeit der Seite: 0.078 Sekunden