Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Връзка между първичен ключ и клъстерен индекс

Първичният ключ е логически концепция - това е уникалният идентификатор за ред в таблица. Като такъв той има куп атрибути - може да не е нула и трябва да е уникален. Разбира се, тъй като е вероятно често да търсите записи по техния уникален идентификатор, би било добре да имате индекс на първичния ключ.

Клъстърираният индекс е физически концепция - това е индекс, който влияе върху реда, в който записите се съхраняват на диска. Това го прави много бърз индекс при достъп до данни, въпреки че може да забави записите, ако вашият първичен ключ не е пореден номер.

Да, можете да имате първичен ключ без клъстериран индекс - и понякога може да искате (например когато вашият първичен ключ е комбинация от външни ключове в таблица за свързване и не искате да си налагате допълнителни разходи за разбъркване на диска при писане).

Да, можете да създадете групиран индекс върху колони, които не са първичен ключ.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да видите плана за изпълнение на заявка в Azure Data Studio (SQL Server)

  2. T-SQL динамични SQL и Temp таблици

  3. Разберете защо имейл не успя да се изпрати в SQL Server (T-SQL)

  4. Преобразувайте името на месеца в номера на месеца в SQL Server (T-SQL)

  5. Какъв низ да използвам за свързване към SQL Server?