OKB-000263 | Datensätze ersetzen

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