Różnica między kluczem podstawowym a kluczem unikalnym
Kluczowa różnica między kluczem podstawowym a kluczem unikalnym
- W tabeli może znajdować się jeden klucz podstawowy, ale w tabeli może znajdować się wiele kluczy unikalnych.
- Celem klucza podstawowego jest wymuszenie integralności jednostki; z drugiej strony celem unikalnego klucza jest wymuszenie unikalnych danych.
- W przypadku kluczy podstawowych domyślny indeks jest klastrowany, natomiast w przypadku kluczy unikatowych domyślny indeks nie jest klastrowany
- Klucz podstawowy nie pozwala na kolumny zerowe, podczas gdy klucz unikalny pozwala na kolumny zerowe.
- W kluczu podstawowym duplikaty kluczy są niedozwolone, natomiast w kluczu unikalnym, jeśli jedna lub więcej części klucza ma wartość null, dozwolone są duplikaty kluczy.
Tutaj przeanalizowałem różnicę między kluczem podstawowym a kluczem unikalnym i kompleksowo ocenię ich zalety i wady.
Co to jest klucz podstawowy?
Ograniczenie klucza podstawowego to kolumna lub grupa kolumn w tabeli, która jednoznacznie identyfikuje każdy wiersz w tej tabeli. Klucz podstawowy nie może być duplikatem, co oznacza, że ta sama wartość nie może pojawić się w tabeli więcej niż raz.
Tabela może mieć tylko jeden klucz podstawowy. Główny klucz można zdefiniować na poziomie kolumny lub tabeli. Jeśli tworzysz złożony klucz podstawowy, należy go zdefiniować na poziomie tabeli.
Przykład tworzenia klucza podstawowego
Poniższy przykład opisuje tabelę o nazwie student. Zawiera ona pięć atrybutów: 1) StudID, 2) Roll No., 3) First Name, 4) Last Name i 5) Email.
Atrybut Roll No nigdy nie może zawierać zduplikowanej wartości ani wartości null. Dzieje się tak dlatego, że każdy student zapisany na uniwersytet może mieć unikalny numer rejestracyjny. Każdy wiersz tabeli można łatwo zidentyfikować za pomocą numeru rolki ucznia. Dlatego jest uważany za klucz podstawowy.
Funkcje klucza podstawowego
Na podstawie moich obserwacji oto ważne cechy klucza podstawowego:
- Klucz podstawowy implementuje integralność jednostki tabeli.
- W tabeli możesz zachować tylko jeden element podstawowy.
- Klucz podstawowy zawiera jedną lub więcej kolumn tabeli.
- Kolumny są zdefiniowane jako inne niż null.
Dlaczego warto używać klucza podstawowego?
Biorąc pod uwagę moją wiedzę praktyczną, oto ważne powody, dla których warto używać klucza podstawowego:
- Głównym celem klucza podstawowego jest identyfikacja każdego rekordu w tabeli bazy danych.
- Możesz użyć klucza podstawowego, jeśli nie pozwalasz nikomu na wprowadzanie wartości null.
- Jeśli usuniesz lub zaktualizujesz rekord, określone działanie zostanie podjęte w celu zapewnienia integralności danych w bazie danych.
- Wykonaj operację ograniczenia, aby odrzucić operację usunięcia lub aktualizacji dla tabeli nadrzędnej.
- Dane są organizowane w kolejności indeksów klastrowych za każdym razem, gdy fizycznie organizujesz tabelę DBMS.
Co to jest klucz unikalny?
Unikalny klucz to grupa jednego lub większej liczby pól lub kolumn w tabeli, które jednoznacznie identyfikują rekord bazy danych.
Klucz unikalny jest tym samym, co klucz podstawowy, ale może przyjąć jedną wartość null dla kolumny tabeli. Nie może także zawierać identycznych wartości. Do unikalnych ograniczeń odwołuje się klucz obcy innych tabel.
Przykład tworzenia unikalnego klucza
Rozważmy tę samą tabelę studentów z następującymi atrybutami: 1) StudID, 2) Numer indeksu, 3) Imię, 4) Nazwisko i 5) Adres e-mail.
Identyfikator Studa może mieć ograniczenie dotyczące unikalności, w przypadku którego wpisy w kolumnie Identyfikator Studia mogą być unikalne, ponieważ każdy student na uniwersytecie musi mieć unikalny numer identyfikacyjny. Jeśli student zmienia uczelnię, nie miałby legitymacji studenckiej. Wpis może mieć wartość null, ponieważ w ograniczeniu klucza unikalnego dozwolona jest tylko jedna wartość null.
Funkcje unikalnego klucza
Tutaj przedstawię najważniejsze cechy unikalnego klucza:
- W tabeli możesz zdefiniować więcej niż jeden unikalny klucz.
- Domyślnie klucze unikatowe znajdują się w nieklastrowanych indeksach unikatowych.
- Składa się z jednej lub więcej kolumn tabeli.
- Kolumna tabeli może mieć wartość null, ale preferowana jest tylko jedna kolumna o wartości null.
- Do unikalnego ograniczenia można łatwo odwoływać się za pomocą ograniczenia klucza obcego.
Dlaczego warto używać unikalnego klucza?
Oto ważne powody, dla których polecam używanie unikalnego klucza:
- Celem unikalnego klucza jest zapewnienie, że informacje w kolumnie dla każdego rekordu tabeli są unikalne.
- Gdy zezwolisz użytkownikowi na wprowadzenie wartości null.
- Unikalny klucz jest używany, ponieważ domyślnie tworzy indeks nieklastrowany.
- Unikalnego klucza można użyć, gdy musisz zachować wartości null w kolumnie.
- Gdy jedno lub więcej niż jedno pole/kolumna tabeli jednoznacznie identyfikuje rekord w tabeli bazy danych.
Różnice między kluczem podstawowym a kluczem unikalnym
W mojej analizie oto główne różnice między kluczem podstawowym a kluczem unikalnym:
Podstawa porównania | Główny klucz | Unikalny klucz |
---|---|---|
Liczba kluczy | W tabeli może znajdować się jeden klucz podstawowy | W tabeli może znajdować się wiele unikalnych kluczy |
NULL | Nie zezwala na kolumny zerowe. | Zezwala na kolumny zerowe. |
wskaźnik | Domyślny indeks jest klastrowany | Domyślny indeks nie jest klastrowany |
Cel | Celem klucza podstawowego jest wymuszenie integralności jednostki. | Celem unikalnego klucza jest wymuszenie unikalnych danych. |
Zastosowanie | Jest to ograniczenie SQL, które umożliwia jednoznaczną identyfikację każdego rekordu lub wiersza w tabeli bazy danych. | Jest to ograniczenie SQL, które nie pozwala na przypisanie tej samej wartości do dwóch izolowanych rekordów w tabeli bazy danych. |
Modyfikacja wartości | W kluczu podstawowym duplikaty kluczy są niedozwolone. | W kluczu unikalnym, jeśli jedna lub więcej części klucza ma wartość null, dozwolone są duplikaty kluczy. |
Składnia |
Klucz podstawowy można utworzyć przy użyciu składni: CREATE TABLE Employee ( ID int PRIMARY KEY, Name varchar(255), City varchar(150) ) |
Unikalny klucz można utworzyć za pomocą składni: CREATE TABLE Employee ( ID int UNIQUE. Name varchar(255) NOT NULL. City varchar(150) ) |
Możesz także eksplorować: Różnica między kluczem podstawowym a kluczem obcym
Jak wybrać pomiędzy kluczem podstawowym a kluczem unikalnym
- Unikalne klucze są lepsze, gdy mamy kolumny, o których wiemy, że nie powinny zawierać duplikatów.
- Klucz podstawowy jest idealny, gdy nie można zachować wartości null w tabeli. Można go również użyć, gdy masz klucz obcy w innej tabeli, aby utworzyć relację.