sql >> Database >  >> RDS >> Mysql

Implicaties van supertype en subtype

Als u alleen afbeeldingen aan gebruikers en pagina's hoeft toe te voegen, weet ik niet zeker of een volledige categoriehiërarchie (ook bekend als "subklasse", "subtype", "erfenis") optimaal zou zijn.

Ervan uitgaande dat pagina's/gebruikers meerdere afbeeldingen kunnen hebben en een bepaalde afbeelding aan meerdere pagina's/gebruikers kan worden gekoppeld, en ervan uitgaande dat u geen afbeeldingen aan afbeeldingen wilt toevoegen, zou uw model er waarschijnlijk als volgt uit moeten zien:

Je zou gebruik categoriehiërarchie om een ​​vergelijkbaar resultaat te bereiken...

... maar met zo weinig subklassen zou ik het afraden (vanwege mogelijke problemen met onderhoud en prestatie). Aan de andere kant, als er een mogelijkheid is om in de toekomst nieuwe subklassen toe te voegen, zou dit de juiste oplossing kunnen zijn (ENTITY_IMAGE zal automatisch al deze nieuwe subklassen "bedekken", dus je hoeft geen nieuwe "link" te introduceren tabel voor elk van hen).

Tussen haakjes, er zijn 3 belangrijke manieren om de categoriehiërarchie te implementeren, elk met zijn eigen set van afwegingen.



  1. Juistheid en beperkingen

  2. MYSQL Dump alleen bepaalde rijen

  3. Veldtypen en gebruik in Access 2019-databases

  4. Essentiële PostgreSQL-bewaking - deel 2