Gemeinsam zu mehr Effizienz in der Anwendungserstellung
| K  | K  (→Verwendung) | ||
| Zeile 37: | Zeile 37: | ||
| ==== Verwendung ==== | ==== Verwendung ==== | ||
| <source> | <source> | ||
| - | anzahlDS = ExecuteParamSQL("Parameters P1 text, P2 int, P3 date;" & _ | + | anzahlDS = ExecuteParamSQL("Parameters P1 text, P2 int, P3 date; " & _ | 
| - |                             " insert into Tabelle (T, Z, D) Values ([P1], [P2], [P3])", _ | + |                             "insert into Tabelle (T, Z, D) Values ([P1], [P2], [P3])", _ | 
|                             "abc", 123, Now()) |                             "abc", 123, Now()) | ||
| </source> | </source> | ||
| {{Hierarchy footer}} | {{Hierarchy footer}} | ||
| Programmier-Konzepte | 
| 
 | 
Der unten angeführte Code zeigt nur ein Prinzip und stellt keine fertige Lösung dar.
| Inhaltsverzeichnis | 
Eine insert- bzw. Update-Anweisung soll per VBA zusammengesetzt und mit Werten aus Variablen versorgt werden.
Public Function ExecuteParamSQL(ByVal SqlText As String, _ ParamArray qdfParams() As Variant) As Long Dim qdf As DAO.QueryDef Set qdf = CurrentDb.CreateQueryDef("", SqlText) Dim i As Long For i = 0 To UBound(qdfParams) qdf.Parameters(i) = qdfParams(i) Next qdf.Execute dbFailOnError ExecuteParamSQL = qdf.RecordsAffected End Function
anzahlDS = ExecuteParamSQL("Parameters P1 text, P2 int, P3 date; " & _ "insert into Tabelle (T, Z, D) Values ([P1], [P2], [P3])", _ "abc", 123, Now())