Primary key и foreign key являются важными концепциями в SQL, позволяющими устанавливать связи между таблицами.
Primary key представляет собой уникальный идентификатор записи в таблице. Он может быть установлен для одного или нескольких столбцов в таблице и должен быть уникальным для каждой записи. Часто в качестве primary key выбирают автоинкрементный столбец, который увеличивается на 1 при каждой новой записи. Primary key может использоваться для быстрого поиска и обновления записей в таблице.
Пример создания primary key в таблице "users":
CREATE TABLE users (
id INT NOT NULL AUTO_INCREMENT,
name VARCHAR(50) NOT NULL,
email VARCHAR(255) NOT NULL,
PRIMARY KEY (id)
);
Foreign key, в свою очередь, используется для установления связей между таблицами. Он представляет собой ссылку на primary key в другой таблице. Таким образом, foreign key может быть использован для связывания данных из двух таблиц.
Пример создания таблицы "orders", в которой поле "user_id" является foreign key для таблицы "users":
CREATE TABLE orders (
id INT NOT NULL AUTO_INCREMENT,
user_id INT NOT NULL,
product_name VARCHAR(50) NOT NULL,
PRIMARY KEY (id),
FOREIGN KEY (user_id) REFERENCES users(id)
);
В этом примере поле "user_id" таблицы "orders" ссылается на primary key "id" таблицы "users". Если в таблице "orders" будет добавлена запись с несуществующим "user_id", то это приведет к ошибке. С помощью foreign key можно также устанавливать ограничения на удаление или изменение записей в таблице, чтобы избежать нарушения связей.
Таким образом, использование primary key и foreign key позволяет устанавливать связи между таблицами и обеспечивать целостность данных в базе данных.