Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Indeksy serwera SQL zawierają klucz podstawowy?

Twój współpracownik łączy „klucz podstawowy” z „kluczem indeksu klastrowego” (prawdopodobnie dlatego, że domyślnie plik PK utworzony na stercie bez określenia nonclustered słowo kluczowe stanie się indeksem klastrowym tabeli).

To jest prawda że w tabeli z indeksem klastrowym wartość klucza indeksu klastrowego zostanie dodana jako uwzględnione kolumny do wszystkich indeksów nieklastrowanych, aby działały jako lokalizator wierszy. (chociaż kolumny nie zostaną dodane dwukrotnie, jeśli są już częścią definicji indeksu nieklastrowanego).

Idealny klucz indeksu klastrowego to

  • unikalny (aby działać jako lokalizator wiersza, musi być unikalny - SQL Server doda uniquifier, jeśli nie jest)
  • wąski (ponieważ jest odtwarzany we wszystkich indeksach nieklastrowanych)
  • statyczny (unikaj konieczności aktualizowania wartości w wielu różnych miejscach)
  • stale rosnący



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL Server 2008:Zmienić nazwę elementu za pomocą XML DML?

  2. Czy muszę liczyć transakcje przed wycofaniem jednej w bloku catch w T-SQL?

  3. Jak zaimportować plik DBF do SQL Server

  4. Chcesz otrzymać listę wszystkich młodszych lekarzy pracujących pod starszym lekarzem i odwrotnie?

  5. Jak wbudować funkcjonalność RUNAS /NETONLY do programu (C#/.NET/WinForms)?