AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Richtig Speichern

Ein Thema von Ykcim · begonnen am 28. Okt 2013 · letzter Beitrag vom 31. Okt 2013
Antwort Antwort
mquadrat

Registriert seit: 13. Feb 2004
1.113 Beiträge
 
Delphi XE2 Professional
 
#1

AW: Richtig Speichern

  Alt 29. Okt 2013, 09:04
1. Wie stellt Ihr fest, welche Felder sich geändert haben und deshalb bei einem Update berücksichtigt werden sollten?
2. Wie setzt Ihr die Sperrung eines Datensatzes um, wenn gerade bearbeitet wird?
3. Ich habe bei den Unidac auch ein Objekt names Transaktion dabei. Allerdings hat anscheinend jede UniQuery schon eine enthalten? Habe noch nie mit Transaktionen gearbeitet...
1. Wir machen das - wie hier schon gezeigt - mit den Settern. Ergo wir merken uns nur welche Datensätze aktualisiert werden müssen und schreiben dann alle Felder des Datensatzes.
2. Über einen eigenen Dienst, der dann in der Fehlermeldung auch anzeigt, wer was und vor allem warum bearbeitet.
3. Welche Engine verwendest du in MySQL? Bei MYISAM gibt es sowieso keine Transaktionen. Bei InnoDB könntest du welche nutzen, wenn du möchtest.

@Transaktionen-Thema
Wir bündeln durchaus logisch zusammengehörende Operationen in einer Transaktion.
  Mit Zitat antworten Zitat
Ykcim

Registriert seit: 29. Dez 2006
Ort: NRW
856 Beiträge
 
Delphi 12 Athens
 
#2

AW: Richtig Speichern

  Alt 31. Okt 2013, 09:46
Hallo Zusammen,

vielen Dank für die vielen Anregungen. Bin gerade geschäftlich unterwegs, daher nicht immer am Rechner um zu antworten...

Ich werde also mal gucken auf welchem Weg ich erkenne, welche Felder geändert wurden. Ihr habt mir ja den ein oder anderne aufgezeigt. Ein Element, welches ich vielleicht verwendet könnte, wäre mein Klassenobjekt. Ich habe ein Objekt einer definierten Klasse, welches erst aus der Datenbank gefüllt wird und dann daraus das Formular füllt. Das bedeutet natürlich, dass ich alle in der Datenbank gespeicherten Werte noch in dem Klassenelement verfügbar habe und die einzelnen Felder dann damit vergleichen kann, ob die Daten unterschiedlich sind. Und dann muss ich mir meine Update-Anweisung entsprechend zusammenbauen.

Ich werde es mir mal nächste Woche ansehen und versuchen umzusetzen. Aber so richtig elegant finde ich diesen Weg nicht. Ich habe auch schon mal darüber nachgedact, ob es sinnvoll ist, wenn ich ein zweites Objekt dieser Klasse definiere und alle neuen Wert dareinlade, wenn sie geändert werden. Dann hätte ich gerne eine Möglichkeit, dass ich die beiden Elemente mit einander vergleichen kann und auf diesem Wege die Änderungen herausfinde.

Gibt es da Meinungen zu?

Vielen Dank
Patrick
Patrick
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:51 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz