Warum noch ein Access-Buch?
Für wen ist das Buch?
Jetzt bestellen
+ direkter Download des eBooks!
Nur EUR 59,95!
Fehler gefunden?
Bitte melden!
Wünsche an das Buch?
Her damit!
Was denken die Leser über dieses Buch?
Lesen Sie aktuelle Rezensionen!
Kapitel des noch nicht veröffentlichten Buchs zum Downloaden, Probelesen und Kommentieren
Beispieldatenbanken
Zusätzliches Material

Das Buch im HTML-Format

Für unbestimmte Zeit bieten Addison-Wesley und André Minhorst den kompletten Inhalt des Buchs als Download an. Schauen Sie rein und informieren Sie sich über den Inhalt! Und wenn Ihnen das Buch nützlich erscheint und Sie glauben, dass Sie etwas gelernt haben oder durch das Gelesene sogar etwas Zeit und somit Geld bei Ihrer Arbeit einsparen konnten, können Sie sich ja beim Autor und beim Verlag revanchieren - beispielsweise durch den Kauf dieses Buchs.

Am schönsten wäre es natürlich, wenn Sie das Buch direkt hier bestellen - Sie erhalten das Buch dann direkt vom Verlag, und der Autor und Verlag haben dann noch mehr davon, als wenn Sie es anderswo kaufen.

Danke für Ihr Interesse!

16.3.18 Aktualisieren eines Datensatzes

16.3.19 Löschen eines Datensatzes

Um den aktuell im Formular angezeigten Datensatz zu löschen, klicken Sie auf die Löschen-Schaltfläche. Diese ruft wie gehabt die Business-Schicht auf und übergibt den Wert des Feldes PersonID an die dortige Methode DeletePerson. Nach erfolgreichem Löschvorgang leert die Routine das Formular, aktualisiert das Kombinationsfeld zur Schnellsuche und leert auch dieses.

Private Sub cmdLoeschen_Click()
    If objController.DeletePerson(Me!txtPersonID) = True Then
        FormularLeeren
        cboSchnellsucheAktualisieren
        Me!cboSchnellsuche = Null
    End If
End Sub

Listing 16.50: Starten des Löschvorgangs

Die Methode DeletePerson des Controller-Objekts reicht die ID des zu löschenden Datensatzes direkt an die Methode Delete der Datenzugriffsklasse weiter.

Public Function DeletePerson(lngPersonID As Long) As Boolean
    If objPersonDAO.Delete(lngPersonID) = True Then
        DeletePerson = True
    Else
        DeletePerson = False
        MsgBox "Die Person konnte nicht gelöscht werden.", _
            vbOKOnly + vbExclamation, "Fehler beim Löschen"
    End If
End Function

Listing 16.51: Von der Business-Schicht zur Datenzugriffsschicht: Löschen einer Person

Diese löscht den Datensatz mit einem DELETE-Statement und gibt bei Gelingen den Wert True zurück.

Public Function Delete(PersonID As Long) As Boolean

    On Error GoTo Delete_Err

    Dim db As DAO.Database

    Set db = CurrentDb

    db.Execute "DELETE FROM tblPersonen WHERE [PersonID] = " & PersonID, _
        dbFailOnError

    Delete = True

Delete_Exit:
    On Error Resume Next
    Set db = Nothing
    Exit Function

Delete_Err:
    Delete = False
    GoTo Delete_Exit

End Function

Listing 16.52: Entfernen eines Datensatzes aus der Tabelle tblPersonen

Nächster Abschnitt:

16.3.20 Businesslogik und mehr

© 2006-2008 André Minhorst Alle Rechte vorbehalten.