Database
 sql >> база данни >  >> RDS >> Database

Как да направите колона уникална в SQL?

Проблем:

Бихте искали да направите дадена колона уникална в дадена таблица в база данни.

Пример:

Бихме искали да направим колоната name уникален в таблицата product . Заявката по-долу представя един начин да го направите.

Решение 1

CREATE TABLE product (
id INT NOT NULL PRIMARY KEY,
name VARCHAR(100) UNIQUE, 
producer VARCHAR(100), 
category VARCHAR(100)
);

Дискусия:

В този пример дадена колона (колоната name ) беше направено уникално чрез добавяне на клаузата UNIQUE в края на колоната на дефиницията (name VARCHAR(100) UNIQUE ). Тази нова таблица (в нашия пример:product ) ще съдържа колоната (в нашия пример:name ), който съхранява уникални стойности в редове.

Решение 2:

ALTER TABLE product 
ADD CONSTRAINT UQ_product_name UNIQUE(name);

Дискусия:

В този пример таблицата product вече съществува. Искаме да модифицираме тази таблица и да добавим уникално ограничение към колона name . Това е възможно с помощта на ALTER TABLE клауза. Първо пишем ALTER TABLE, след което изброяваме името на таблицата (в нашия пример:product ), а след това добавяме клаузата ADD CONSTRAINT с името на уникалното ограничение (в нашия пример:UQ_product_name ). Това е последвано от ключовата дума UNIQUE с колона/колони (в нашия пример това е колона:name ) в скоби.

Можете също така да направите уникално ограничение за няколко колони. Ето как:

Решение 3:

ALTER TABLE product 
ADD CONSTRAINT UQ_product_name_producer UNIQUE(name, producer);

Дискусия:

В този пример продуктът на таблицата се променя с помощта на ALTER TABLE клаузата и клаузата ADD CONSTRAINT с името на уникалното ограничение (в нашия пример:UQ_product_name_producer ), последвано от UNIQUE ключова дума със списъка с колони (в нашия пример има две колони:name и producer ) в скоби.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Свързване на RDBMS и NoSQL:Въведение в 2DX UI клъстер

  2. Основи на табличните изрази, част 11 – изгледи, съображения за модификация

  3. Как да изчислим степента на задържане в SQL?

  4. Сравняване на производителността на Windows Azure VM, част 1

  5. Част 3 – Клиенти, разговори и срещи