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

Brug af en af ​​kolonnerne i en sammensat nøgle som en fremmednøgle

Som MySQL-dokumentation på fremmednøgler indikerer a> :

Så hvis du bruger innodb, så tillader MySQL dig ikke at oprette en fremmednøgle på et felt, der ikke er feltet længst til venstre i et indeks.

Årsagen er, at man i et indeks med flere kolonner ikke kan slå en værdi op ud fra et felt, der ikke er til venstre, derfor kan indekset ikke bruges til hurtigt at slå værdien op for en fremmednøglekontrol.

Denne adfærd for MySQL-indekser er beskrevet i MySQL-dokumentationen på indekser med flere kolonner :



  1. Formularvalidering

  2. omskriv forbindelse og forespørgsel fra mysql til PDO

  3. NHibernate vil indsætte, men ikke opdatere, efter flytning til vært med delt server, der kører mysql

  4. Oracle REGEXP_LIKE og ordgrænser