sql >> Databasteknik >  >> RDS >> Sqlserver

Är en primärnyckel nödvändig i SQL Server?

Nödvändig? Nej. Används bakom kulisserna? Tja, den sparas på disk och förvaras i radcachen, etc. Om du tar bort den kommer du att öka din prestanda något (använd en klocka med millisekundsprecision för att märka det).

Men ... nästa gång någon behöver skapa referenser till den här tabellen kommer de att förbanna dig. Om de är modiga kommer de att lägga till en PK (och vänta länge på att DB ska skapa kolumnen). Om de inte är modiga eller dumma kommer de att börja skapa referenser med hjälp av affärsnyckeln (d.v.s. datakolumnerna) vilket kommer att orsaka en underhållsmardröm.

Slutsats:Eftersom kostnaden för att ha en PK (även om den inte är använd bankomat) är så liten, låt det vara.



  1. Läser arabisk text från Oracle-databasen kodad i WE8ISO8859P1 med java

  2. Hur lägger man till AUTO_INCREMENT i en befintlig kolumn?

  3. Nyckelindikatorer för problemdesign

  4. Skicka lösenordet till mysql_config_editor med variabel i skalet