Как создать составной первичный ключ в SQL Server?
В этой статье мы узнаем, что такое составной первичный ключ и как создать составной первичный ключ. Как мы знаем, первичный ключ — это ключ-кандидат, который выбирается для уникальной идентификации строки в таблице. А Первичный ключ не допускает значения NULL.
Составной первичный ключ
Когда два или более столбца находятся вместе. Определите уникальную строку в таблице, известную как составной первичный ключ. Составной ключ — это ключ, представляющий собой комбинацию нескольких атрибутов или столбцов данной таблицы. Это может быть ключ-кандидат или первичный ключ.
Мы будем реализовывать с помощью примера для лучшего понимания, прежде всего, мы создадим базу данных. Имя базы данных будет Sample. и внутри базы данных мы создадим Compo.
Шаг 1: Создание базы данных
Для создания базы данных есть запрос, который мы будем использовать в платформе SQL.
Запрос:
Create database sample
Шаг 2: Используйте базу данных
Для использования базы данных мы будем использовать другой запрос в платформе SQL, например Mysql.
Запрос:
Use Sample
Шаг 3: Создание таблицы с составным первичным
Мы будем использовать приведенный ниже запрос для создания составного ключа.
Запрос:
CREATE TABLE COMPO ( EMP_ID INT, DEPT_ID INT, EMPNAME VARCHAR(25), GENDER VARCHAR(6), SALARY INT --> //This statement will create a //composite Primary Key from PRIMARY KEY (EMP_ID,DEPT_ID) with the help of Column EMP_ID and DEPT_ID );
Шаг 4: После создания таблицы мы можем обосновать представление и метаданные таблицы с помощью приведенного ниже запроса. Он вернет схему, столбец, тип данных, размер и ограничения.
Запрос:
EXEC sp_help COMPO;
Выход:
Шаг 5: ВСТАВКА ДАННЫХ В ТАБЛИЦУ.
Мы будем использовать приведенный ниже SQL-запрос для вставки данных в созданную таблицу.
Запрос:
INSERT INTO COMPO VALUES (101,001,"RAHUL","MALE",22000), (102,002,"RAJ","MALE",25000), (103,003,"PRIYANKA","FEMALE",25500), (102,003,"VIJAY","MALE",25000), (101,004,"SHWETA","FEMALE",22000), (104,003,"SATYA","MALE",23000), (105,005,"VIVEK","MALE",28000);
Шаг 6: Проверка вставленных данных
После вставки данных в таблицу мы можем обосновать или подтвердить, какие данные мы должны вставить правильно или нет. С помощью нижнего запроса.
Запрос:
SELECT * FROM COMPO
Выход:
Шаг 7: Как мы знаем, первичный ключ имеет уникальное значение, но в приведенной выше таблице EMP_ID имеет повторяющееся значение. Потому что он один (EMP_ID) не является первичным ключом, поэтому он может содержать повторяющиеся значения. Точно так же DEPT_ID также имеет повторяющееся значение, поскольку он также не является первичным ключом. Но в приведенной выше записи EMP_ID и DEPT_ID не дублируются. Потому что это составной первичный ключ. Здесь (EMP_ID + DEPT_ID) однозначно идентифицирует строку в приведенной выше таблице.
Для поиска уникального значения из COMPO мы выполним, как показано ниже.
Запрос:
SELECT EMPNAME,SALARY FROM COMPO WHERE EMP_ID= 102 AND DEPT_ID =6;
Выход: