Autor Beitrag
Vegeto
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 262



BeitragVerfasst: Mo 29.10.12 16:35 
Eine frage noch xD

Möchte jetzt die gewonnen Daten in eine Datenbank speichern, doch der soll jedesmal bevor er sie in die Datenbank speichert, erst überprüfen.

Soll ich erst Insert Into - Anweisung ausführen lassen und einfach daran eine Update - Anweisung ausführen ?

Oder eher anders herum, erst update, dann Insert Into...?

Oder soll ich zuerst die datenbank durchlaufen lassen mittels select * und dann erst Update?

Nur ein anhaltspunkt wo ich weiter suchen kann.. kein Code snippet.

Würde mich freuen wenn du mir diese farge nochmal beantworten magst :)

Lg
Ralf Jansen
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 4708
Erhaltene Danke: 991


VS2010 Pro, VS2012 Pro, VS2013 Pro, VS2015 Pro, Delphi 7 Pro
BeitragVerfasst: Mo 29.10.12 17:18 
Da gibt es keine klare Antwort drauf. Hängt von zuvielen Faktoren ab.

Beispiel von Fragen die du dir Stellen musst

- was ist mit Daten die nicht mehr im Excel Sheet da sind? aus der DB löschen?
- anhand welchen Kriterien findest ich die Daten in der DB. Ist das überhaupt eindeutig?
- Wie hoch ist die Änderung/Trefferwahrscheinlichkeit in der DB? Werden es voraussichtlich mehr Insert oder Updates sein? (Gedachte Mengen unter der Annahme du wüsstest schon vorher was du brauchst)

Neben deinen gedachten Möglichkeiten von 'Insert oder Update' gibt es auch die 'erst Delete dann immer Insert' Möglichkeit. Gerade wenn anhand der Kriterien ein Massen löschen möglich ist ist die nicht zu verachten.
Vegeto Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 262



BeitragVerfasst: Di 30.10.12 09:21 
Ohh... Habe mir das nicht so komplex gedacht.

Also ich habe mir das so vorgestellt:

- die Daten von einer Excel Datei in die Datenbank kopiert wird. Die Excel Datei wird regelmäßig aktualisiert, sodass die alten Werte ersetzt wrden!
- in der Datenbank sollen demnach auch die alten Werte vorkommen, z.B. Kopiere ich jz einen Datensatz in die DB und nach einer Woche gibt es in der Excel Datei diesen Datensatz nicht, doch der soll weiterhin in der DB enthalten sein.
- Und wenn das Programm am tag häufiger ausgeführt wird, sind vielleicht demnnach noch Datensätze drinne, die schon übertragen wurden, die sollen DANN nicht übertragen sein, zum Abgleich vllt. zwei Spalten die fest definiert sind?

Ich hoffe du verstehst was ich meine.
Also die Excel Datei ändert sich alle 2-3 Tage, das programm wird am Tag mindestens 2x benutzt, dass heißt es werden schon häufiger Doppelte Datensätze eingelsen, doch die sollen, dann NICHT kopiert werden, erst wenn neue Datensätze vorhanden sind.

Lg

ps.: Wenn du magst können wir das ganze auch per PM klären? :)
weil wir hier OFF Topic werden ^^