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

projektowanie nowej tabeli do codziennego przesyłania - użyj unikalnego ograniczenia

  1. Unikalny indeks może być nieklastrowany.
  2. Klucz podstawowy jest unikalny i może być grupowany
  3. Indeks klastrowy nie jest domyślnie unikalny
  4. Unikalny indeks klastrowy jest unikalny :)

Więcej informacji znajdziesz w tym przewodniku .

Powinniśmy więc oddzielić klucze unikatowości i indeksu. Jeśli chcesz zachować unikalność danych według jakiejś kolumny - stwórz unikalne ograniczenie (unikalny indeks). Będziesz chronić swoje dane. Możesz także utworzyć klucz podstawowy (PK) na swoich kolumnach - one również będą unikatowe. Ale jest różnica:wszystkie inne indeksy będą używać PK do odwoływania się, więc PK musi być jak najkrótszy. Tak więc moja rada - stwórz kolumnę Identity (int lub bigint) i utwórz na niej PK. I utwórz unikalny indeks dla swoich unikalnych kolumn. Zapytania o dane mogą stać się szybsze, jeśli wykonujesz zapytania dotyczące swoich unikalnych kolumn, jeśli robisz zapytania dotyczące innych kolumn - musisz utworzyć inne, specyficzne indeksy.

Unikalne klucze - dla spójności danych, indeksy - dla zapytań.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. 3 sposoby na zliczanie liczby tabel systemowych w bazie danych SQL Server

  2. Używając z vs deklaruj tabelę tymczasową:wydajność / różnica?

  3. Jak przeszukać bazę danych SQL Server w poszukiwaniu ciągu?

  4. Wstrzyknięcie SQL w Visual Basic 2010

  5. Pobierz ostatnio wygenerowany identyfikator asp.net