кодесурса
«SQL

SQL ПЕРВИЧНЫЙ КЛЮЧ

script1adsense2code
script1adsense3code

ОСНОВНОЙ КЛЮЧ

SQL PRIMARY KEY - это столбец в таблице, который должен содержать уникальное значение, которое можно использовать для уникальной идентификации каждой строки таблицы.

Тем не менее, SQL поддерживает первичные ключи напрямую с ограничением PRIMARY KEY.

«ОСНОВНОЙ

Функционально это то же самое, что и ограничение UNIQUE, за исключением того, что для данной таблицы можно определить только один PRIMARY KEY. PRIMARY KEY не допускает значения NULL.

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

SQL PRIMARY KEY может состоять из одного или нескольких полей в таблице, и когда это происходит, они называются составным ключом.

Первичные ключи могут быть указаны во время CREATING TABLE или во время изменения структуры существующей таблицы с помощью инструкции ALTER TABLE.

Это ограничение является комбинацией ограничения NOT NULL и ограничения UNIQUE. Это ограничение гарантирует, что конкретный столбец или комбинация из двух или более столбцов для таблицы имеют уникальную идентификацию, которая помогает легче и быстрее найти конкретную запись в таблице.

Синтаксис:

 CREATE TABLE <имя_таблицы>
column1 data_type [(size)] NOT NULL PRIMARY KEY,
column2 data_type [(size)],
...);

Параметры:

название Описание
table_name Имя таблицы, в которой хранятся данные.
column1, column2 Наименование столбцов таблицы.
тип данных Это char, varchar, целое число, десятичное число, дата и многое другое.
размер Максимальная длина столбца таблицы.

Хорошая практика для первичных ключей в таблицах

  • Первичные ключи должны быть настолько маленькими, насколько это необходимо. Предпочитайте числовой тип, потому что числовые типы хранятся в гораздо более компактном формате, чем символьные форматы.
  • Первичные ключи никогда не должны меняться.
  • Не используйте номер паспорта, номер социального страхования или номер контракта сотрудника в качестве «первичного ключа», так как эти «первичные ключи» могут меняться в реальных ситуациях.

Пример:

Предположим, мы собираемся создать таблицу с именем 'agent1'. Он содержит столбцы и типы данных, которые показаны ниже. Для каждой строки таблицы 'agent1' требуется идентифицировать каждого агента с помощью уникального кода, поскольку имена двух или более агентов в городе страны могут совпадать.

Так что не стоит создавать PRIMARY KEY для 'agent_name'. 'Agent_code' может быть единственным и исключительным выбором для PRIMARY KEY для этой таблицы.

Имя поля Тип данных Размер Десятичные знаки НОЛЬ скованность
agent_code голец 6 нет ОСНОВНОЙ КЛЮЧ
имя агента голец 40 нет
рабочая область голец 35 да
комиссия десятичный 10 2 да
номер телефона голец 17 да

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

Ограничение первичного ключа на уровне столбца:

Код SQL:

CREATE TABLE agent1(
<span class="style1">agent_code char(6) NOT NULL PRIMARY KEY</span>,
agent_name char(40) NOT NULL,
working_area char(35),
commission decimal(10,2),
phone_no char(17)
) ;

Ограничение первичного ключа на уровне таблицы:

Код SQL:

CREATE TABLE agent1(
agent_code char(6) NOT NULL,
agent_name char(40) NOT NULL,
working_area char(35),
commission decimal(10,2),
phone_no char(17),
<span class="style1">CONSTRAINT pk_agent_code PRIMARY KEY (agent_code))</span>;
) ;

SQL CREATE TABLE с основным ограничением

SQL PRIMARY KEY CONSTRAINT является комбинацией ограничения NOT NULL и ограничения UNIQUE. Это ограничение гарантирует, что конкретный столбец или комбинация из двух или более столбцов для таблицы имеют уникальную идентификацию, которая помогает легче и быстрее найти конкретную запись в таблице.

Пример :

В следующем примере создается таблица. Вот имя поля и типы данных:

Имя поля Тип данных Размер Десятичные знаки НОЛЬ скованность
agent_code голец 6 нет ОСНОВНОЙ КЛЮЧ
имя агента голец 40 нет
рабочая область голец 35 да
комиссия десятичный 10 2 да
номер телефона голец 17 да

можно использовать следующий оператор SQL:

Код SQL:

CREATE TABLE mytest(
agent_code char(6) NOT NULL PRIMARY KEY,
agent_name char(40) NOT NULL,
working_area char(35),
commission decimal(10,2),
phone_no char(17));

Чтобы увидеть структуру созданной таблицы:

Код SQL:

DESCRIBE mytest; 

Выход :

«Sql

SQL CREATE TABLE с первичным ключом и уникальным ограничением

В следующем примере создается таблица. Вот имя поля и типы данных:

Имя поля Тип данных Размер Десятичные знаки НОЛЬ скованность
cust_code голец 6 нет ОСНОВНОЙ КЛЮЧ
CUST_NAME голец 25 нет УНИКАЛЬНАЯ
cust_city голец 25 нет
класс целое число да
agent_code голец 6 нет

можно использовать следующий оператор SQL:

Код SQL:

CREATE TABLE mytest(
cust_code char(6) NOT NULL PRIMARY KEY,
cust_name	char(25) NOT NULL UNIQUE,
cust_city char(25) NOT NULL,
grade	integer,
agent_code char(6) NOT NULL);

Чтобы увидеть структуру созданной таблицы:

Код SQL:

DESCRIBE mytest;

Выход:

«Sql

SQL CREATE TABLE с PRIMARY KEY CONSTRAINT для большего количества столбцов

В следующем разделе мы обсудим использование SQL PRIMARY KEY CONSTRAINT вместе с оператором CREATE TABLE для двух или более столбцов.

Пример:

В следующем примере создается таблица. Таблица должна содержать ПЕРВИЧНЫЙ КЛЮЧ с комбинацией двух столбцов 'cust_code' и 'cust_city'. Вот имя поля и типы данных:

Имя поля Тип данных Размер Десятичные знаки НОЛЬ скованность
cust_code голец 6 нет ОСНОВНОЙ КЛЮЧ
CUST_NAME голец 25 нет
cust_city голец 25 нет ОСНОВНОЙ КЛЮЧ
класс целое число да
agent_code голец 6 нет

можно использовать следующий оператор SQL:

Код SQL:

CREATE TABLE mytest(
cust_code char(6) NOT NULL,
cust_name char(25) NOT  NULL,
cust_city char(25),
grade integer,
agent_code char(6) NOT NULL,
PRIMARY KEY (cust_code,cust_city));

Чтобы увидеть структуру созданной таблицы:

Код SQL:

DESCRIBE mytest;

Выход:

«Sql

Упражнения по SQL

Хотите улучшить вышеуказанную статью? Вносите свои заметки / комментарии / примеры через Disqus.

Предыдущая: Создать таблицу
Далее: Внешний ключ

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code