52 lines
2.4 KiB
Markdown
52 lines
2.4 KiB
Markdown
|
---
|
|||
|
title: SQL Primary Key Constraint
|
|||
|
localeTitle: Ограничение основного ключа SQL
|
|||
|
---
|
|||
|
## Первичное ограничение ключа
|
|||
|
|
|||
|
### Введение
|
|||
|
|
|||
|
Первичный ключ - это столбец или набор столбцов, которые однозначно идентифицируют каждую строку в таблице.
|
|||
|
|
|||
|
Он называется «ограничение», потому что он заставляет систему ограничивать данные, разрешенные в этих столбцах. В этом случае….
|
|||
|
|
|||
|
* для хранения данных (NOT NULL)
|
|||
|
* УНИКАЛЬНО из всех остальных строк таблицы.
|
|||
|
* Каждая таблица может иметь только ОДИН первичный ключ
|
|||
|
|
|||
|
Первичные ключи в основном используются для поддержания целостности данных каждой строки.
|
|||
|
|
|||
|
Это также позволяет системе и приложениям убедиться, что они правильно считывают, обновляют и соединяют данные.
|
|||
|
|
|||
|
### Пример с созданием таблицы
|
|||
|
|
|||
|
Вот команда create table, которая также создаст первичный ключ, используя два поля.
|
|||
|
|
|||
|
```sql
|
|||
|
CREATE TABLE priKeyExample(
|
|||
|
rcdKey_id_a INT NOT NULL,
|
|||
|
rcdKeySeq_id INT NOT NULL,
|
|||
|
someData varchar(256) NOT NULL,
|
|||
|
PRIMARY KEY(rcdKey_id_a,rcdKeySeq_id));
|
|||
|
```
|
|||
|
|
|||
|
### Пример с альтернативной таблицей
|
|||
|
|
|||
|
Существующий должен быть удален первым
|
|||
|
|
|||
|
```sql
|
|||
|
DROP INDEX `primary` ON priKeyExample;
|
|||
|
```
|
|||
|
|
|||
|
Теперь мы добавим новый.
|
|||
|
|
|||
|
```sql
|
|||
|
ALTER TABLE priKeyExample
|
|||
|
ADD CONSTRAINT myPriKey PRIMARY KEY(rcdKey_id_a,rcdKeySeq_id);
|
|||
|
```
|
|||
|
|
|||
|
Как и для всех этих SQL-вещей, MUCH MORE им больше, чем в этом вводном руководстве.
|
|||
|
|
|||
|
Надеюсь, это, по крайней мере, даст вам достаточно, чтобы начать.
|
|||
|
|
|||
|
Пожалуйста, ознакомьтесь с руководством для своего менеджера баз данных и получайте удовольствие от различных вариантов.
|