sql >> Database teknologi >  >> RDS >> Sqlserver

hvad er forskellen mellem Clustered Index og Unique Index?

De to er ikke relaterede:

  • "Unik" sikrer, at hver værdi forekommer præcis kun én gang
  • "Clustered" er, hvordan dataene er arrangeret på disken

Du kan have alle 4 permutationer:

  • "unik ikke-grupperet"
  • "unik klynge"
  • "ikke-unik ikke-grupperet"
  • "ikke-unik klynge"

Der opstår en vis forvirring, fordi standarden for en "primær nøgle" (PK) i SQL Server er klynget.

En "primær nøgle" skal dog altid være unik. Forskellen mellem "unik" og "PK" er, at unik tillader én NULL, PK tillader ikke nogen NULL.

Endelig nogle antal begrænsninger

  • fordi clustered henviser til layoutet på disken, kan du kun have ét clustered indeks pr. tabel
  • en tabel kan ikke have mere end én pimary-nøgle, men kan have mange unikke indekser


  1. Gem flere rækker fra mysql-databasen i en enkelt variabel

  2. Oprettelse af et job i Oracle ved hjælp af DBMS_JOB

  3. Array til streng konverteringsfejl Symfony 3

  4. Hvad er der galt med denne PL/SQL? Bindingsvariabel * er IKKE DEKLARERET