sql >> Database teknologi >  >> RDS >> Mysql

Hvorfor bruge Foreign Key-begrænsninger i MySQL?

fremmednøgler håndhæve henvisningsintegritet . Disse begrænsninger garanterer, at en række i en tabel order_details med et felt order_id henviser til en orders tabel vil aldrig have et order_id værdi, der ikke findes i orders bord.

Fremmednøgler er ikke påkrævet for at have en fungerende relationsdatabase (faktisk MySQL's standardlager motoren understøtter ikke FK'er), men de er absolut vigtige for at undgå brudte relationer og forældreløse rækker (dvs. referentiel integritet). Evnen til at håndhæve referenceintegritet på databaseniveau er påkrævet for C i ACID at stå.

Hvad angår dine bekymringer vedrørende ydeevne, er der generelt en præstationsomkostning, men den vil sandsynligvis være ubetydelig. Jeg foreslår, at du indsætter alle dine fremmednøglebegrænsninger og kun eksperimenterer uden dem, hvis du har reelle problemer med ydeevnen, som du ikke kan løse ellers.



  1. OpenCart:Sådan udfyldes oc_category_path nøjagtigt

  2. PHP &mySQL - skrevet som ë

  3. Kan ikke installere mysql-python (nyere versioner) i Windows

  4. Xampp:webbrowser vil ikke vise localhost-siden