Вставка данных с помощью соединительных таблиц - PullRequest
0 голосов
/ 17 января 2012

Я работаю над своим первым крупным проектом базы данных с таблицами соединений в CodeIgniter, и я не слишком уверен, как справиться со вставкой данных.

Допустим, у меня есть две таблицы some_table & another_table с соединительной таблицей some_another. Теперь, если я хочу добавить запись в some_table, я также пишу отдельные запросы вставки для соединительной таблицы, или есть лучший, более автоматизированный способ справиться с этим?

Например, должен ли я сделать это:

INSERT INTO some_table (col1, col2, col3) VALUES (val1, val2, val3)

INSERT INTO some_another (col01, col02) VALUES (val01, val02)

для каждой записи, или есть способ или инструмент, который обрабатывает также обновление таблиц соединений для меня?

Если есть какая-либо другая информация, которую я должен предоставить, пожалуйста, дайте мне знать. Спасибо!

1 Ответ

0 голосов
/ 17 января 2012

Зависит от цели «соединительной таблицы».Если вы просто хотите объединить все записи между двумя другими таблицами, используйте для этого соединение.Если вам нужна корреляция «многие ко многим», на самом деле нет автоматического способа узнать, какие из них должны быть связаны.

Если, однако, вы хотите смоделировать соединение и просто «предварительно загрузить» все отношения втаблица «многие ко многим» (полезна, если вы хотите, чтобы отношения по умолчанию можно было отключить или изменить позже), для этого можно использовать триггеры.

Независимо от этого вам нужно будет использовать отдельные запросы для каждой таблицы,поскольку MySQL не может вставлять в несколько таблиц одним запросом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...