Последние учебники веб-разработки
 

SQL Первичного ключа


SQL первичного ключа

Ограничение первичного ключа однозначно идентифицирует каждую запись в таблице базы данных.

Первичные ключи должны содержать уникальные значения.

Первичный ключ столбец не может содержать NULL значения.

Большинство таблицы должны иметь первичный ключ, и каждая таблица может иметь только один первичный ключ.


SQL первичного ключа на CREATE TABLE

Следующий SQL создает первичный ключ "P_Id" колонке , когда "Persons" создается таблица:

MySQL:

CREATE TABLE Persons
(
P_Id int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
PRIMARY KEY (P_Id)
)

SQL Server / Oracle / MS Access:

CREATE TABLE Persons
(
P_Id int NOT NULL PRIMARY KEY,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)

Чтобы разрешить именование ограничение первичного ключа, а также для определения первичного ключа на несколько столбцов, используйте следующий синтаксис SQL:

MySQL / SQL Server / Oracle / MS Access:

CREATE TABLE Persons
(
P_Id int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
CONSTRAINT pk_PersonID PRIMARY KEY (P_Id,LastName)
)

Note: В приведенном выше примере есть только один первичный ключ (pk_PersonID). Тем не менее, значение первичного ключа состоит из двух колонок (p_id + LastName).


SQL первичного ключа на ALTER TABLE

Чтобы создать ограничение первичного ключа на "P_Id" колонку , когда таблица уже создана, используйте следующий SQL:

MySQL / SQL Server / Oracle / MS Access:

ALTER TABLE Persons
ADD PRIMARY KEY (P_Id)

Чтобы разрешить именование ограничение первичного ключа, а также для определения первичного ключа на несколько столбцов, используйте следующий синтаксис SQL:

MySQL / SQL Server / Oracle / MS Access:

ALTER TABLE Persons
ADD CONSTRAINT pk_PersonID PRIMARY KEY (P_Id,LastName)

Note: Если вы используете оператор ALTER TABLE , чтобы добавить первичный ключ, уже должны были объявлены столбец первичного ключа (ей) не содержат NULL значений (когда таблица впервые была создана).


Чтобы удалить ограничение первичного ключа

Чтобы удалить ограничение первичного ключа, используйте следующий SQL:

MySQL:

ALTER TABLE Persons
DROP PRIMARY KEY

SQL Server / Oracle / MS Access:

ALTER TABLE Persons
DROP CONSTRAINT pk_PersonID