Hallo!
wenn ich in schleifen testen muss, ob ich löschen darf oder nicht ist das für die db hoher aufwand...
definiere "sehr hoher Aufwand"
ein entsprechendes sql-statement das sich kümmert ist sicher das ideale...
das stimmt!
Einfach sagen "es funktioniert" und gut ist reicht nicht aus...
code sollte robust und effizient sein...
Da stimme ich voll und ganz zu, aber das ist ja ein "Wartungsscript", welches nur nhin und wieder auf die DB "losgelassen" wird. Angenommen da stehen 10.000 Einträge in der DB - was ich schon bezweifele - findet das Select-Statement vielleicht 10, womöglich 100 tote Datensätze. Wenn Du jetzt in einer Schleife 100 DELETEs auf die DB losläßt dauert das vermutlich nichtmal eine Sekunde. Was ist das Problem dabei?
Es ist oft das Problem(auch meins) das man es immer perfekt will, das es auch in einer DB mit mehreren Mio Datensätzen "effizient" funktionieren würde, aber wenn diese Zahel doch sowieso niemals erreichen wird, warum sich dann so viele Sorgen machen, außerdem wäre die einzige Alternative auf eine andere RDBMS umzustellen, und ob sich das lohnt?
Grüße
Andreas
Odium