Einzelnen Beitrag anzeigen

Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#16

AW: Werte in einem Datenbankfeld prüfen?

  Alt 18. Okt 2010, 00:11
Bei den zu löschenden ist es ja klar.
Verstehe ich das richtig, ich muss zuerst prüfen, welche Zahlenwerte der zu aktualisierende Datensätz nicht mehr hat, diese in der Details-Tabelle ermitteln und löschen? Wird es nicht einfacher und auch schneller, alle Werte des Datensasatzes aus der Tabelle zu löschen und die neue zu inserieren?
Jein in diesem Fall ist es aber wahrscheinlich egal
Wichtig hierbei ist aber auf jeden Fall das Übertragen innerhalb einer Transaktion durchzuführen.
Delphi-Quellcode:
ADOConnection1.BeginTrans; // Transaktion starten
{... Daten zur Datenbank übertragen ...}
ADOConnection1.Commit; // Transaktion abschließen
Alternativ zum Löschen und wieder komplett schreiben kann man auch mit einer temporären Tabelle arbeiten.
In diese trägt man alle Daten ein und macht dann den Abgleich mit SQL.
Dieses ist wesentlich ressourcenschonender, da hierbei nur die Veränderungen in der Tabelle gespeichert/gelöscht werden.

Die Transaktion bleibt aber auch hierbei Pflicht.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat