Einzelnen Beitrag anzeigen

Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.117 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: Ein Datensatz wird ausgewählt, mehrere geändert, warum?

  Alt 25. Okt 2006, 12:49
Moin Stephan,

die ID ist der Primärschlüssel, der als Identity deklariert ist.
Das der Wert leer ist kann nicht passieren, da für den Fall, dass keine Zeile des ListView ausgewählt wurde (Selected = nil) die Funktion nicht ausgeführt wird.
Die Idee mit dem RecordCount könnte ich auch noch mal umsetzen, allerdings dürfte es auch bei mehreren zurückerhaltenen Sätzen nicht zu einem Problem kommen, da ja, wenn überhaupt, nur der erste Satz geändert werden würde.
Da allerdings über Gleichheit des PK die zu ändernden Daten abgefragt werden, ist es eigentlich nicht möglich eine Anzahl > 1 zu erhalten.

Zitat von nahpets:
Wahrscheinlich sind in der Datenbank irgendwelche Daten etwas anders als erwartet.
Leider nicht. Die betroffene Tabelle ist, noch, so übersichtlich, dass ich das leicht sehen kann.

Zitat von nahpets:
Appropopopo: Was passiert, wenn FsTripID einen Wert einhält, den es in der Datenbank nicht (mehr) gibt?
Da ich dann 0 Recods zurückerhalte, dürfte es in einem Fehler münden, sobald ich versuche da etwas zu ändern, allerdings ist die Chance, dass dieser Fall eintritt nahe 0, denn der ListView aus dem ausgewählt wird, stellt eine Anzeige der aktuellen Daten der Tabelle da, die geändert werden soll.

Zitat von nahpets:
Können die Benutzer die Daten gleichzeitig ändern,
Theoretisch ja, dürfte in der Praxis aber nicht vorkommen (und sollte in diesem Falle hier auch keine Rolle spielen).

Zitat von nahpets:
Ist RowsAffected <> 1, ist irgendwas schiefgegangen.
Stimmt, gute Idee.
Der MS-SQL liefert das AFAIK zurück, so dass ich dass jetzt auch noch an allen in Frage kommenden Stellen mal einbauen werden.
Ist der Wert <> 1 schreibe ich mir ein wenig in meine Logdatei.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat