sql >> Databasteknik >  >> RDS >> Mysql

Implikationer av supertyp och subtyp

Om allt du behöver är att bifoga bilder till användare och sidor är jag inte säker på att en fullständig kategorihierarki (alias "underklass", "undertyp", "arv") skulle vara optimal.

Förutsatt att sidor/användare kan ha flera bilder, och vilken bild som helst kan bifogas till flera sidor/användare, och förutsatt att du inte vill bifoga bilder till bilder, bör din modell förmodligen se ut så här:

Du kunde använd kategorihierarki för att uppnå liknande resultat...

...men med så få underklasser skulle jag rekommendera det (på grund av potentiella underhålls- och prestandaproblem). Å andra sidan, om det finns en potential för att lägga till nya underklasser i framtiden, kan detta faktiskt vara rätt lösning (ENTITY_IMAGE kommer automatiskt att "täcka" alla dessa nya underklasser, så du behöver inte introducera en ny "länk" tabell för var och en av dem).

BTW, det finns 3 viktiga sätt för att implementera kategorihierarkin, var och en med sin egen uppsättning avvägningar.



  1. Så här löser du ORA-29280:ogiltig katalogsökväg

  2. Ignorera dubblettposter och begå framgångsrika på DbContext.SaveChanges() i EF Core

  3. Får du det senast infogade post-id:t för en databastabell i java?

  4. MySQL rumslig geometri validera wkt