Veröffentlicht 2. November 201212 j Hallo Zusammen, wir bekommen von mehreren Distributoren jeweils CSV-Dateien mit Artikeldaten, Preise, Warengruppen usw. Wir nehmen am besten aber die Artikeldaten als Beispiel. Ist es sinnvoll wenn ich von 2-3 Distributoren jeweils 1 Artikeldaten CSV Datei erhalte, diese jeweils in ein eigene MS SQL Tabelle zu Inserten und anschließend in einer große Tabelle immer update? ODER Macht es mehr die Tabellen immer per Join bzw. Union zusammenzufügen? Die CSV-Dateien haben unterschiedlich viele Datensätze. Bisher größter Bestand 410.000 und kleinster 23.000 Datensätze. Die Frage ist macht es mehr sinn die Tabellen miteinander zu Join und Union oder besser alle in einer große Tabelle. Ziel ist das man aus allen Bereich die Artikel suchen kann, um diese dann weiter zu verarbeiten. Gruß IT-Biene
2. November 201212 j Ich würde eine große Tabelle machen. Denn dann kann man vernünftig mit Indexes arbeiten.
3. November 201212 j Ja, würde ich auch so machen. Wenn die CSV-Dateien immer wieder die selbe Struktur haben, könnte man sich sogar überlegen, ob man sich auf die Dauer nicht mal ein kleines Programm schreibt, welches die Daten dann in die Tabelle importiert...
3. November 201212 j Handelt es sich um Komplettlieferungen, die dazu führen, dass die alten, vorhandenen Daten entfernt werden, bekommst Du Aktualisierungen oder musst du anhand einer Komplettlieferung selbst herausfinden, was gelöscht, geändert oder neu hinzugefügt werden muss? Dim
3. November 201212 j Ich würd den Vendor / Distirbutor als Fremdschlüssel anlegen, und das ganze in eine Tabelle schreiben. Ich würd mir auch nicht den Act machen, und da mehere Tabellen pflegen. Setz nen ssis Package auf für jedes Datenformat, schreibs in eine dafür vorgesehene Tabelle, mach von mir aus noch den filename und import datum in ne Spalte. Dann ists "aufgeräumt" Ob das jetzt inserts, merges, oder lösch alles und inserts sind, ist recht beiläufig imho.
5. November 201212 j Ob das jetzt inserts, merges, oder lösch alles und inserts sind, ist recht beiläufig imho. Ja genau. Mal eben alles raus löschen :upps Dim
5. November 201212 j Autor Hallo, Danke schon mal für das Feedback. Es handelt sich hier nicht um Bestellungen, sondern nur rein um Artikeldaten. Sprich Artikelnummer, Bezeichnung, UVP, Bild-URL usw. Die Daten haben immer die gleiche Struktur und werden immer erweitert. Das heißt ich muss schauen welche Datensätze aktualisiert werden müssen. Gruß IT-Biene
5. November 201212 j Hi, in diesem Fall würde ich mir eine temporär genutzte Zwischentabelle anlegen, in die jeweils eine Datei geladen wird. Dann machst Du deinen Abgleich und ermittelst, welche Daten geändert bzw. eingefügt werden sollen und hältst dies über ein extra Kennezichen in besagter Tabelle fest. Anschließend gibt es zwei SQLs bzw. Verarbeitungsschritte, welche die Daten entsprechend diesem Kennzeichen weitergeben. Falls Deine DB den MERGE befehl kennt, kannst Du den INSERT/UPDATE Schritt evt. auch zusammenfassen. Dim
5. November 201212 j Autor Hallo Dim, danke für deine Antwort. *like* Ich habe eine MS SQL und diese kann ja Mergen. MERGE (Transact-SQL) Ich denke ich werde deinem Vorschlag folgenden und dies dann so umsetzen. Danke.
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.