2017-08-04 8 views
0

Was wäre der beste Ansatz, wenn ich Validierung nach Datensatzlöschung setzen möchte? Hier ist der Grund warum.Validierung beim Löschen von Datensatz ActiveJDBC

Ich habe zwei Tabellen, Store und Personal.

Struktur Store:

  • ID
  • Shop-Code
  • Store Name

Struktur der Mitarbeiter:

  • ID
  • Staff-Code
  • Mitarbeiter Name
  • Shop-Code

Wie Sie sehen können, Tischspeicher Tabelle Personal zusammen.

Was passiert, wenn der Benutzer versucht, einen Speicher zu löschen, der bereits für das Tabellenpersonal verwendet wird? Wenn keine Validierung, meine Daten würden gebrochen werden. Wie kann ich das verhindern?

Danke.

Antwort

1

Der beste Weg zur Implementierung ist die referenzielle Integrität in der Datenbank, nicht im Framework.

Struktur der STORE:

  • id
  • Code
  • Name

Mitarbeiterstruktur:

  • id
  • Code
  • Name
  • store_id

Wie Sie die Tabelle STAFF "gehört" sehen, zu speichern, weil es die ID eines übergeordneten Datensatz enthält.Dies ist ein klassischer One-to-many-Verein: http://javalite.io/one_to_many_associations

Sie eines von zwei Dingen tun:

  1. Wurf Ausnahme von DB falls Sie einen Elternteil löschen, ohne ein Kind
  2. Cascade Löschen Löschen

    : ein Kind im Fall, dass ein Elternteil automatisch (in DB)

ein paar Links vorgeschlagen von Google gelöscht http://www.mysqltutorial.org/mysql-on-delete-cascade/

Verwandte Themen