Autor |
Beitrag |
rob87
      
Beiträge: 461
Win Me, Win XP Home, Win XP Prof
Delphi 2007 Enterprise
|
Verfasst: Di 16.12.08 16:48
Ich will ein Delete-Query ausführen und anschließnd wieder in diese Tabelle Daten hineinschreiben.
Die Fehlermeldung die ich bekomme ist folgende: Die zum Aktualisieren angegebene Zeile wurde nicht gefunden. EInige Werte wurden seit dem letzten Lesen ggf. geändert.
Ich vermute mal, dass irgendwo eine Transaktionsbestätigung fehlt:
Delphi-Quelltext 1: 2: 3: 4:
| bspquery.sql.text = 'delete from tabelle 1 where wert5 = 'xyz''; bspquery.execsql;
|
diese sache macht er aber immer nur wenn ich die tabelle nach dem programmstart ein zweites oder drittes mal füllen will. Beim ersten Mal hat er kein Problem???
Zuletzt bearbeitet von rob87 am Di 16.12.08 16:54, insgesamt 2-mal bearbeitet
|
|
DeddyH
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Di 16.12.08 16:48
Zitat: | Ich vermute mal, dass irgendwo eine Transaktionsbestätigung fehlt |
Ich auch *g*
|
|
rob87 
      
Beiträge: 461
Win Me, Win XP Home, Win XP Prof
Delphi 2007 Enterprise
|
Verfasst: Di 16.12.08 16:53
DeddyH hat folgendes geschrieben : | Zitat: | Ich vermute mal, dass irgendwo eine Transaktionsbestätigung fehlt |
Ich auch *g* |
Nur hab ich des bei der ADOQuery-Komponente ned. Hab kein "Qry.Transaction.Commit" oder "Qry.CommitRetaining". ??
|
|
DeddyH
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Di 16.12.08 16:57
Ich habe heute kein Delphi zur Verfügung, ADO ist auch nicht meine Welt, aber schau mal bei der ADOConnection nach, ich könnte mir denken, dass es da so etwas wie StartTransaction und Commit gibt.
|
|
rob87 
      
Beiträge: 461
Win Me, Win XP Home, Win XP Prof
Delphi 2007 Enterprise
|
Verfasst: Di 16.12.08 17:06
|
|
DeddyH
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Di 16.12.08 17:11
Hältst Du evtl. im Updatequery noch Daten bereit, die Du gerade gelöscht hast?
|
|
rob87 
      
Beiträge: 461
Win Me, Win XP Home, Win XP Prof
Delphi 2007 Enterprise
|
Verfasst: Di 16.12.08 17:33
DeddyH hat folgendes geschrieben : | Hältst Du evtl. im Updatequery noch Daten bereit, die Du gerade gelöscht hast? |
Ach ich weiß bald gar ix mehr. Kann mich heut überhaupt nimma gscheid konzentrieren. Sorry..
Die Sache funktioniert so. Es gibt eine temporäre Tabelle. Diese wird zu Beginn teilweise gelöscht. Mit eben obigem Query. Beim Befüllen wird nun anhand gewisser Attribute geguckt, mach ich nen Insert oder nen Edit. Dann wird das ganze Gedönse wieder ausgelesen
Und bei dem Insert, bzw Edit hab ich halt nach jedem Datensatz ein Post; Aber auch kein Transaction.Commit... Ich kenn mich nimma aus. Ich geh jetzt dann heim... 
|
|
rob87 
      
Beiträge: 461
Win Me, Win XP Home, Win XP Prof
Delphi 2007 Enterprise
|
Verfasst: Di 23.12.08 11:00
|
|
MSCH
      
Beiträge: 1448
Erhaltene Danke: 3
W7 64
XE2, SQL, DevExpress, DevArt, Oracle, SQLServer
|
Verfasst: Di 23.12.08 12:43
schau mal nach Query.Refresh()
:-)Msch
_________________ ist das politisch, wenn ich linksdrehenden Joghurt haben möchte?
|
|
rob87 
      
Beiträge: 461
Win Me, Win XP Home, Win XP Prof
Delphi 2007 Enterprise
|
Verfasst: Di 23.12.08 13:59
MSCH hat folgendes geschrieben : | schau mal nach Query.Refresh()
:-)Msch |
Hmmm.. Nun ja, ginge vermutlich auch. Aber des is die sicherste Variante. Und des bissal Performance, des dabei drauf geht is auch ned tragisch... Also dann frohe Weihnachten noch!
|
|