Die Vorgehensweise zum Erstellen eines ADO-Recordsets ist wie folgt: Dim oRs As ADODB.Recordset Set oRs = New ADODB.Recordset With oRs .CursorLocation = ... .Open "SQL-Abfragestring", oConn, adOpenDynamic, adLockOptimistic End With Das sind also jedesmal mindestens 5 Zeilen Code. Warum eigentlich nicht diese Zeilen in einer gesonderte öffentliche Funktion kapseln? Dann benötigt man zukünftig nur noch eine einzige Codezeile zum Erstellen des Recordsets! ' ADO-Recordset erstellen Public Function dbOpenRecordset(oConn As ADODB.Connection, _ ByVal sSQL As String, _ Optional ByVal CursorType As ADODB.CursorTypeEnum = adOpenDynamic, _ Optional ByVal LockType As ADODB.LockTypeEnum = adLockOptimistic, _ Optional ByVal CursorLocation As ADODB.CursorLocationEnum = adUseClient) _ As ADODB.Recordset Set dbOpenRecordset = New ADODB.Recordset With dbOpenRecordset .CursorLocation = CursorLocation .Open sSQL, oConn, CursorType, LockType End With End Function Aufrufbeispiel Dim oRs As ADODB.Recordset Set oRs = dbOpenRecordset(oConn, "SELECT * FROM Tabelle") 17.07.07: Erweiterung (von Carl-Rainer Zeiss) ' ADO-Recordset erstellen Public Function dbOpenRecordset(oConn As ADODB.Connection, _ ByVal sSQL As String, _ Optional ByVal CursorType As ADODB.CursorTypeEnum = adOpenDynamic, _ Optional ByVal LockType As ADODB.LockTypeEnum = adLockOptimistic, _ Optional ByVal CursorLocation As ADODB.CursorLocationEnum = adUseClient) _ As ADODB.Recordset ' Falls kein "SELECT..." im SQL-String angegeben, ' autom. ergänzen If Instr(1, sSQL, "select", vbTextCompare) = 0 Then sSQL = "SELECT * FROM " & sSQL End If Set dbOpenRecordset = New ADODB.Recordset With dbOpenRecordset .CursorLocation = CursorLocation .Open sSQL, oConn, CursorType, LockType End With End Function Aufrufbeispiel: Dim oRs As ADODB.Recordset Set oRs = dbOpenRecordset(oConn, "Tabelle") Dieser Tipp wurde bereits 32.557 mal aufgerufen.
Anzeige
Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
vb@rchiv CD Vol.6 ![]() Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! Online-Update-Funktion Entwickler-Vollversionen u.v.m. Tipp des Monats Dieter Otter Doppelte Einträge aus einer Liste entfernen (.NET) Wie man schnell alle doppelten Einträge aus einer Liste entfernt, das erfahren Sie hier. sevWizard für VB5/6 ![]() Professionelle Assistenten im Handumdrehen Erstellen Sie eigene Assistenten (Wizards) im Look & Feel von Windows 2000/XP - mit allem Komfort und zwar in Windeseile :-) |
||||||||||||||||
|
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |
|||||||||||||||||


ADO-Recordset einfacher öffnen


