>
> Hallo!
>
> Hm, wir reden aneinander vorbei.
>
> > Ich bin fast einverstanden.... Meine Funktion sieht ja so
> �hnlich aus,
> > bis auf....:
>
> Der entscheidende Unterschied ist doch, ob Du das Recordset als Objekt
> oder als Objektreferenz zur�ckgibst, also mit oder ohne "SET".
Ohh... Das hab ich �bersehen... Du benutzt ja gar kein "set"... Das
funktioniert so nicht!
Wenn Du kein Set benutzt, wird nicht, wie Du anscheinend meinst, das
Recordset kopiert, sondern es wird nichts �bergeben... Teste mal Deinen
Code, dann wirst Du sehen, dass das so nicht funzt...
>
> > > dim rs
> > > rs = GetRS("...sql...")
> > > ...
> > > ...
> > > function GetRS(pSQL)
> > > dim lRS
> > > set lRS =
> Server.CreateObject("ADODB.Recordset")
> > > lRS.CursorLocation = adUseClient
> > > lRS.CursorType = adOpenStatic
> > > lRS.LockType = adLockReadOnly
> > Ich hatte hier zwar adLockBatchOptimistic, aber adLockReadOnly ist
> > eigentlich richtig... Egal beides d�rfte gehen..
> >
> > > lRS.Open pSQL, ConnectionString
> > > set lRS.ActiveConnection = nothing
> > > GetRS = lRS
> > > lRS.Close
> > Das ist ein fehler... Wenn man das Recordset schliesst werden alle
> Daten
> > gel�scht...
>
> Deshalb wird ja das Objekt und nicht die Referenz �bergeben.
Du hast das Set-Statement falsch verstanden.
>
> > > set lRS = nothing
> > Unn�tig, da lRS bei "end function" sowieso ausser scope f�llt und
> > automatisch auf nothing gesetzt wird bzw. gel�scht wird...
>
> Sicher? Dann m�sste das Objekt doch auch verschwinden, wenn das Script
> zu Ende l�uft und mit rs.Close wird das Object auch nicht zerst�rt.
Normalerweise sollte es das, und das tut es auch, es sei denn es wird
durch zirkul�re Verweise innerhalb von sich selbst am Leben gehalten...
Und deshalb soll man auch das close vorher machen, weil es dann intern
das ganze Objekt-Gewussel abbaut.
Close zerst�rt das Object ncht, gibt aber den gesamten Speicher frei,
den das Recordset-Object f�r die Daten allokiert hat, sowie die
Connection etc...
Claudius
| [aspdedatabase] als [email protected] subscribed
| http://www.aspgerman.com/archiv/aspdedatabase/ = Listenarchiv
| Sie k�nnen sich unter folgender URL an- und abmelden:
| http://www.aspgerman.com/aspgerman/listen/anmelden/aspdedatabase.asp