sql >> Database >  >> RDS >> Mysql

Database-ontwerp:wat heeft het voor zin om externe sleutels te identificeren?

Buitenlandse sleutels doen een paar dingen. Het is duidelijk dat ze je voorzien van ingebouwde gegevensintegriteit, zoals Macy Abbey al zei.

Interessant is dat de query-optimizer van uw favoriete RDBMS ook beperkingen zoals externe sleutels kan gebruiken om aanvullende optimalisaties uit te voeren. Kortom, de database kan bepalen of het een beter werk kan doen bij het schrijven van een query dan u. Door de aanwezigheid van externe sleutels kan de database deze aannames doen. Een goed voorbeeld vind je op Helpen beperkingen van externe sleutels de prestaties? . Hoewel die link SQL Server-specifiek is, is het principe hetzelfde, ongeacht de database-engine.



  1. Ongeldige poging om te lezen wanneer lezer is gesloten

  2. Hoe de meest recente set gedateerde records uit een mysql-tabel te selecteren?

  3. Jetty 7 + MySQL-configuratie [java.lang.ClassNotFoundException:org.mortbay.jetty.webapp.WebAppContext]

  4. Hoe converteer je een parent-child (adjacency) tabel naar een geneste set met behulp van PHP en MySQL?