Wozu den noch kopieren? Disconnecten reicht schon... Wozu die zus�tzliche Arbeit? Und ein Recordset nachzuprogrammieren macht wohl kaum sinn...
Claudius > -----Original Message----- > From: Wolfgang Kluge [mailto:[EMAIL PROTECTED]] > Sent: Donnerstag, 14. M�rz 2002 14:32 > To: AspGerman Kaffeehaus > Subject: [aspdecoffeehouse] RE: vb-klasse als rs-ersatz > > > hi,. > > > also erstmal. ich rate dir davon ab ;) aber tu was du nicht > lassen kannst. > disconnected ist das recordset ja schon. fehlt nur noch die kopie. > > und die bekommst du mit der clone-funktion > > > Public Function GetRS(sqlstring) > pRS.Open sqlstring, pnameConn > pRS.ActiveConnection = Nothing > GetRS = pRS.Clone > ' ^^^^^^ > Set pRS = Nothing > End Function > > > > AAAABER ;) > das kann dauern. > > Public Function GetRS(ByVal sqlstring As String) As ADODB.Recordset > ' ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > > solltest du vielleicht auch noch hinschreiben, oder (fast > noch besser) dein > eigenes Objekt erstellen, welches die f�r dich relevanten daten des > recordsets vorh�llt. sonsts ists ja kein rs-ersatz, nur ein > rs-hinundherschieb*g*. > > > ach ja,.. ich bin mir auch hier nicht sicher, aber ich > glaube, du musst > > pRS.ActiveConnection = Nothing > > zu > > Set pRS.ActiveConnection = Nothing > > > umschreiben, damits keine konflikte gibt. activeconnection > kann auch die > verbindungszeichenfolge sein(wie gesagt. nur wenn mich nicht > alles t�uscht) > vor allem ist Nothing aber vom typ object, und solche werden > in vb6 immer > mit set zugewiesen. > > > ciao .. wolfgang > http://www.vbwelt.de/ > > > > tach, > > > > wie ihr alle gemerkt habt versuche ich mich momentan ein bisschen an > > VisualBasic ;-) > > > > ich m�chte eine klasse entwickeln, die mir ein recordset aus einer > > datenbank zur�ckgibt. wichtig hierbei: das recordset soll auf > > der seite > > der klasse sofort von der datenbank getrennt werden und geschlossen > > werden... > > > > mein ansatz: > > > > > Public pnameConn As ADODB.Connection > > > Private pRS As ADODB.Recordset > > > > > > Private Sub Class_Initialize() > > > Set pnameConn = New ADODB.Connection > > > pnameConn.Open "DSN=db" > > > Set pRS = New ADODB.Recordset > > > pRS.CursorLocation = 3 > > > End Sub > > > > > > Private Sub Class_Terminate() > > > pnameConn.Close > > > Set pRS = Nothing > > > Set pnameConn = Nothing > > > End Sub > > > > > > Public Function GetRS(sqlstring) > > > pRS.Open sqlstring, pnameConn > > > pRS.ActiveConnection = Nothing > > > GetRS = pRS > > > Set pRS = Nothing > > > End Function > > > > wie schaffe ich es nun, da� ein > > > > RS = db.GetRS(query) > > > > nicht eine referenz des urspr�nglichen recordsets, sondern eine > > unabh�ngige kopie enth�lt, damit ich das rs auf der klassenseite > > schlie�en kann? > > > > sinn dahinter soll sein, die db bei den aufrufen m�glichst wenig zu > > belasten und die connection gleich wieder frei geben zu k�nnen... > > > > | [aspdecoffeehouse] als [EMAIL PROTECTED] subscribed > | http://www.aspgerman.com/archiv/aspdecoffeehouse/ = Listenarchiv > | Sie k�nnen sich unter folgender URL an- und abmelden: > | > http://www.aspgerman.com/aspgerman/listen/anmelden/aspdecoffee house.asp | [aspdecoffeehouse] als [email protected] subscribed | http://www.aspgerman.com/archiv/aspdecoffeehouse/ = Listenarchiv | Sie k�nnen sich unter folgender URL an- und abmelden: | http://www.aspgerman.com/aspgerman/listen/anmelden/aspdecoffeehouse.asp
