PDA

Vollständige Version anzeigen : Wie nach einem bestimmten Wert in einer Tabelle gucken?


Zordon
25.09.2003, 12:37
Hallo,

ich habe eine Tabelle Projekte und eine Tabelle Kunden. In der Tabelle Projekte gibt es ein Feld namens "P_KundenNr" der mit dem Feld "KundenNr" (Primärschlüssel) aus der Tabelle Kunden verbunden ist.

Jetzt möchte ich, wenn man einen Kunden löschen will, dass VBA nachguckt ob diese KundenNr schon in einem Projekt eingetragen ist und eine Fehlermeldung ausgibt. Weil sonst geht das ja nicht wegen der Beziehung.

Also mit welchem Befehl kann man nach einem bestimmten Wert suchen und dann eine Meldung ausgeben?

Danke

Morli
25.09.2003, 12:53
If DCount("*","Kunden","P_KundenNr=" & DeineZuLöschendeKundenNR)>0 Then
MsgBox "NEIN"
End If

Damit würdest Du prüfen ob in der Tabelle Kunden passen DS vorhanden sind.

Morli

Nouba
25.09.2003, 12:55
Hallo,

mit DLookup könntest Du z.B. im DeleteEvent prüfen, ob in einer (oder mehrfach nacheinander angewendet auch in mehreren) Tabelle(n) Datensätze mit dem Primärschlüssel der Haupttabelle im Fremdschlüsselfeld existieren.

Für mich stellt sich die Frage, warum man einen Kunden löschen will?

khs-hh
25.09.2003, 12:58
Grundsätzlich sollte man ref. Integrität bei den Beziehungen eintragen. Dann würde Access automatisch prüfen, ob ein Kunde gelöscht werden darf bzw je nach Einstellung die bezogenen Sätze bei Projekten auch löschen

Zordon
25.09.2003, 15:39
Danke! Mit Dcount hat alle super geklappt. :)