СВЯЗЬ МНОГИЕ КО МНОГИМ PHP

Связь многие ко многим является одним из наиболее часто используемых типов связей в базах данных и позволяет связывать несколько записей в таблице A с несколькими записями в таблице B.

Для реализации связи многие ко многим в PHP необходимо создать промежуточную таблицу, которая будет связывать первичные ключи таблицы A и B. Например:

$sql = "CREATE TABLE a ( id INT(11) AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255) NOT NULL ); CREATE TABLE b ( id INT(11) AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255) NOT NULL ); CREATE TABLE ab ( a_id INT(11) NOT NULL, b_id INT(11) NOT NULL, PRIMARY KEY (a_id, b_id), FOREIGN KEY (a_id) REFERENCES a(id), FOREIGN KEY (b_id) REFERENCES b(id) );"

Эта конструкция создает три таблицы: a, b и ab. Таблица ab является промежуточной таблицей и содержит только первичные ключи из таблиц A и B. Для добавления записей и установки связей между таблицами необходимо выполнить следующий код:

$pdo = new PDO("mysql:host=localhost;dbname=mydb", "username", "password"); $pdo->exec($sql); $a_id = 1; $b_id = 2; $pdo->exec("INSERT INTO ab (a_id, b_id) VALUES ($a_id, $b_id)"); "

Этот код добавит в таблицу ab запись, которая свяжет запись номер 1 из таблицы A с записью номер 2 из таблицы B. Таким образом, связь многие ко многим в PHP реализуется созданием промежуточной таблицы и выполнением операций добавления, удаления и изменения записей в этой таблице.

ВЕБСОКЕТЫ // ПРИНЦИП РАБОТЫ

Интернет магазин с нуля на php Выпуск №86 Метод для добавления связей многие ко многим в БД

Базы данных - Связь многие ко многим - SQL проще некуда

Интернет магазин с нуля на php Выпуск №74 Mysql связи многие ко многим (mysql many to many)

Уроки по SQL - Создание таблиц, добавление и выборка данных - Связь многие ко многим

(пояснение) sql Многие ко многим как делать SELECT. Простая CMS на PHP и MySQL

Реклама
Новое
Реклама