
Ich habe eine Access-Datenbank mit zwei Tabellen und einem Formular.
Zur Dateneingabe ist das Formular mit einer der Tabellen verknüpft.
Ich habe:
LIVEDB
Dabei handelt es sich um eine Tabelle mit Informationen zu Live-Kunden.LIVEDBINPUT
Formular zur Eingabe von Informationen inLIVEDB
CANCELLATIONDB
Dabei handelt es sich lediglich um eine Tabelle. Wenn jemand storniert, werden die Daten einfach ausgeschnittenLIVEDB
und eingefügtCANCELLATIONDB
.
Ich habe alle möglichen Regeln, die Duplikate im LIVEDBINPUT
Formular verhindern, bin jedoch seit Kurzem auf ein Problem gestoßen: Das LIVEDBINPUT
Formular verhindert keine Duplikate aus der CANCELLATIONDB
Tabelle, sondern nur die LIVEDB
Tabelle selbst.
Ich möchte, dass das Formular die Eingabe einer Telefonnummer verhindert, wenn die Telefonnummer bereits in der LIVEDB
TabelleODERDer CANCELLATIONDB
Tisch.
Wenn ich ein Meldungsfeld so konfigurieren könnte, dass es etwa Folgendes enthält:"diese Telefonnummer existiert bereits in LIVEDB
oder CANCELLATIONDB
", und dann die Option, den Benutzer zu diesem Datensatz zu führen oder ihn zu löschen, das wäre ideal.
Ich habe zahlreiche Informationen dazu gefunden, wie dies in mehreren Spalten einer Tabelle erreicht werden kann, aber ich kann weder eine Idee entwickeln noch einen Weg finden, die Duplikate aus beiden Tabellen zu verhindern, d. h., das Formular könnte die Erstellung eines Duplikats verhindern, das in einer der beiden Tabellen bereits vorhanden ist.
Antwort1
Erstellen Sie eine Abfrage, die alle in Ihrer Tabelle und Ihrer Tabelle UNION
gespeicherten Datensätze liefert , und prüfen Sie dann diese Abfrage auf vorhandene Datensätze, bevor Sie neue Datensätze speichern.LIVEDB
CANCELLATIONDB
Vorausgesetzt, Ihre CANCELLATIONDB
Tabelle weist eine identische Struktur wie Ihre LIVEDB
Tabelle auf (da Sie Datensätze von einer in die andere verschieben), UNION
könnte die Abfrage folgendermaßen aussehen:
SELECT * FROM LIVEDB UNION SELECT * FROM CANCELLATIONDB