KEY
och INDEX
är synonymer i MySQL. De menar samma sak. I databaser skulle du använda index
för att förbättra hastigheten för datahämtning. Ett index skapas vanligtvis på kolumner som används i JOIN
, WHERE
, och ORDER BY
klausuler.
Föreställ dig att du har en tabell som heter users
och du vill söka efter alla användare som har efternamnet 'Smith'. Utan ett index skulle databasen behöva gå igenom alla poster i tabellen:detta är långsamt, för ju fler poster du har i din databas, desto mer arbete måste den göra för att hitta resultatet. Å andra sidan kommer ett index att hjälpa databasen att snabbt hoppa till de relevanta sidorna där "Smith"-posterna förvaras. Det här är väldigt likt hur vi människor går igenom en telefonbokskatalog för att hitta någon med efternamnet:Vi börjar inte söka igenom katalogen från pärm till pärm, så länge vi infogat informationen i någon ordning som vi kan använd för att snabbt hoppa till 'S'-sidorna.
Primära nycklar och unika nycklar liknar varandra. En primärnyckel är en kolumn, eller en kombination av kolumner, som unikt kan identifiera en rad. Det är ett specialfall av unik nyckel . En tabell kan ha högst en primärnyckel, men mer än en unik nyckel. När du anger en unik nyckel i en kolumn kan inga två distinkta rader i en tabell ha samma värde.
Observera också att kolumner som definieras som primärnycklar eller unika nycklar automatiskt indexeras i MySQL.