title image


Smiley Sorry...
... da hab ich nicht weit genug nach unten gelesen.



Also gut:

1. Welche der beiden Möglichkeiten ist (warum) vorzuziehen?



ich würde keines von beiden verwenden, sondern eine Funktion schreiben:



Public Function HasRecords(SQL As String) As Boolean

HasRecords = Not DBEngine(0)(0).OpenRecordset(SQL, dbOpenForwardOnly).EOF

End Function

' oder auch meinetwegen:

Public Function HasRecords(SQL As String) As Boolean

HasRecords = DBEngine(0)(0).OpenRecordset(SQL, dbOpenForwardOnly).Recordcount > 0

End Function





2. Gibt es einen wesentlichen Unterschied zwischen den beiden Möglichkeiten?



Domänenaggregatfunktionen sind vergleichsweise langsam und ineffizient - andererseits sollte das, wenn man die Prüfung nicht gerade tausendfach in einer Schleife ausführt, im Normalfall keine allzugroße Rolle spielen. Ansonsten ist das - wie ja schon erwähnt - mal wieder ein Fall, wo es diverse Wege zum Ziel gibt, deren Unterschiede über weite Teile akademisch sind.



Um nur ein Beispiel zu nennen - ein Vorteil von DCount ist z.B., dass man vom gewählten Objektmodell (DAO, ADO...) unabhängig ist. Als nächstes kann man sich dann um die Verwendung von DBEngine(0)(0) vs. Currentdb streiten...

Gruß aus dem Norden

Reinhard


Bitte immer die Access-Version angeben


 



geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: