Sobes.tech
Junior — Middle

Czy możesz wyjaśnić, czym jest unikalny indeks w bazie danych SQL i w jakich przypadkach jest używany?

sobes.tech AI

Odpowiedź od AI

Un unikalny indeks w bazie danych SQL to struktura danych, która zapewnia unikalność wartości w jednej lub kilku kolumnach tabeli. Oznacza to, że w kolumnie lub kombinacji kolumn, na które nałożony jest unikalny indeks, nie mogą występować dwie takie same wartości.

Używa się unikalnych indeksów do:

  • Zapewnienia integralności danych, na przykład, aby nie było duplikatów w kolumnie z e-mailem lub numerem paszportu.
  • Przyspieszenia wyszukiwań i zapytań po unikalnych polach.

Przykład tworzenia unikalnego indeksu w SQL:

CREATE UNIQUE INDEX idx_unique_email ON Users(email);

W C# z Entity Framework można zdefiniować unikalny indeks za pomocą Fluent API:

modelBuilder.Entity<User>()
    .HasIndex(u => u.Email)
    .IsUnique();

W ten sposób unikalny indeks pomaga zagwarantować, że dane w bazie nie będą zawierały powtarzających się wartości w określonych polach.