Betrifft: ab orgAnice SQL
Frage:
Wie kann ich Datensätze ersetzen?
Lösung:
Beispiel für die Verwendung der Methode Table.ReplaceRecords:
Public Sub ReplaceRecordsExample()
Dim prq As ParserRequest
Dim vafldprq() As ParserRequest
Dim tbl As Table
Dim lReplacedRecords As Long
Dim lProovedRecords As Long
Dim i As Long
‚ Tabelle, in der die Ersetzung vorgenommen werden soll
Set tbl = Database.Tables(„Adressen“)
‚ Welche Datensätze sollen ersetzt werden
‚ Bsp. Alle, die eine PLZ besitzen
Set prq = Database.Parser.CreateRequest(„Len(Adressen->PLZ)>0“)
‚ Hilfsarray für die Ersetzungsausdrücke
ReDim vafldprq(tbl.Fields.Count – 1)
‚ Hilfsfeld füllen
For i = 0 To tbl.Fields.Count – 1
Select Case tbl.Fields(i).Name
‚ Bsp. Strasse soll durch den aktuellen Benutzernamen ersetzt werden
Case „Strasse“
Set vafldprq(i) = Database.Parser.CreateRequest(„CurrentUser()“)
‚ Andere Felder bleiben unangetastet
Case Else
Set vafldprq(i) = Nothing
End Select
Next i
‚ Erstzungsvorgang starten
lProovedRecords = tbl.ReplaceRecords(prq, vafldprq(), lReplacedRecords)
‚ Erfolsmeldung ausgeben
MsgBox CStr(lProovedRecords) & “ Datensätze geprüft, “ & CStr(lReplacedRecords) & “ Datensätze ersetzt.“, vbInformation
End Sub