KLUCZ PODSTAWOWY SQL: Jak utworzyć i dodać do istniejącej tabeli

Co to jest klucz podstawowy w SQL?

Główny klucz to pole lub kombinacja pól, które jednoznacznie identyfikują rekord. Klucz podstawowy to unikatowa kolumna lub zestaw kolumn. Innymi słowy, każda wartość jest unikalna dla klucza podstawowego.

Zasady dotyczące klucza podstawowego

  • Każda tabela może mieć tylko jeden klucz podstawowy SQL.
  • Wszystkie wartości są unikalne, a wartość SQL klucza podstawowego może jednoznacznie identyfikować każdy wiersz.
  • System nie pozwoli na wstawienie wiersza z kluczem podstawowym SQL Server, który już istnieje w tabeli.
  • Klucz podstawowy nie może mieć wartości NULL.

Poniższy diagram podsumowuje wszystkie powyższe punkty dotyczące klucza podstawowego SQL.

Reguły dotyczące klucza podstawowego w SQL
Jak działa klucz podstawowy SQL

Jak utworzyć klucz podstawowy w SQL Server

Możemy utworzyć klucz podstawowy w 2 sposobów:

1. SQL Server Management Studio

2. T-SQL: Utwórz podstawowy podczas tworzenia nowej tabeli

SQL Server Management Studio

Krok 1) Kliknij prawym przyciskiem myszy nazwę tabeli. Kliknij Projekt.

Utwórz klucz podstawowy w SQL Server

Krok 2) Kliknij prawym przyciskiem myszy nazwę kolumny. Kliknij 'Ustaw klucz podstawowy”

Utwórz klucz podstawowy w SQL Server

Wynik: Course_Id to teraz a Główny klucz.

Utwórz klucz podstawowy w SQL Server

T-SQL: Utwórz klucz podstawowy podczas tworzenia nowej tabeli.

Poniżej znajduje się składnia tworzenia tabeli z kluczem podstawowym z T-SQL

Składnia:

CREATE TABLE <Table_Name>
(
Column1 datatype,
Column2 datatype,CONSTRAINT <Name> PRIMARY KEY (Column name)
.
);

Utwórzmy tabelę z jedną kolumną jako kluczem podstawowym SQL.

zapytanie:

CREATE TABLE COURSE_TSQL_PK 
(Course_ID Int not Null,
 Course_name Varchar(20)
 CONSTRAINT PK PRIMARY KEY (Course_ID)	
)

Krok 1) Uruchom zapytanie klikając 'Wykonać.'

Utwórz klucz podstawowy podczas tworzenia nowej tabeli

Wynik: Course_Id to teraz a Główny klucz.

Utwórz klucz podstawowy podczas tworzenia nowej tabeli

Przykład: Zobaczmy, czy umożliwia wprowadzanie wielu rekordów z tym samym identyfikatorem kursu.

Krok 1) Wstaw 4 rzędy z inny identyfikator kursu

Insert into COURSE_TSQL_PK values (1,'SQL');
Insert into COURSE_TSQL_PK values (2,'Python');
Insert into COURSE_TSQL_PK values (3,'SQL');
Insert into COURSE_TSQL_PK values (4,'C');

Krok 2) Sprawdź, czy wszystkie dane wstawione pomyślnie, uruchamiając zapytanie Wybierz.

Utwórz klucz podstawowy podczas tworzenia nowej tabeli

Note: Możemy wstawić zduplikowane wartości w kluczu innym niż podstawowy.

Krok 3) Teraz spróbujmy wstawić nowe rekordy z istniejącym identyfikatorem kursu, który jest kluczem podstawowym.

Insert into COURSE_TSQL_PK values (4,'JAVA');

Wynik: System nie pozwala na wstawienie nowej wartości, ponieważ 4 znajduje się w kolumnie Course_ID, która jest kluczem podstawowym.

Utwórz klucz podstawowy podczas tworzenia nowej tabeli

Jak dodać klucz podstawowy do istniejącej tabeli w SQL?

Teraz zobaczymy, jak dodać klucz podstawowy do istniejącej tabeli w SQL:

Aby utworzyć klucz podstawowy, możesz użyć instrukcji ALTER. Jednak klucz podstawowy można utworzyć tylko w kolumnach zdefiniowanych jako NOT NULL. Nie można utworzyć klucza podstawowego w kolumnie, która dopuszcza wartości NULL. Jeśli musisz to zrobić, musisz upuścić i ponownie utworzyć tabelę.

Oto składnia:

ALTER TABLE tableName
ADD CONSTRAINT constraintName PRIMARY KEY (column_1, column_2, ... column_n);

Na przykład:

ALTER TABLE students
ADD CONSTRAINT students_pk PRIMARY KEY (admission);

Dodaj klucz podstawowy do istniejącej tabeli w SQL

Do już istniejącej tabeli dodaliśmy ograniczenie klucza podstawowego. Ograniczenie zostało dodane w kolumnie przyjęcia i przypisano mu nazwę studenci_pk.

Interesujące fakty!

  • Klucz podstawowy może być kombinacją wielu kolumn. Ta kombinacja jest znana jako Złożony klucz podstawowy.
  • Klucz podstawowy może mieć maksymalnie 16 kolumn.

Podsumowanie

  • Każda tabela może mieć tylko jeden klucz podstawowy
  • Wszystkie wartości są unikalne, co może jednoznacznie identyfikuj każdy wiersz.