2014-09-17 4 views
2

У меня есть две таблицы в SQL. Таблица, называемая users_info, имеет FOREIGN KEY, что относится к другой таблице, которая называется users, столбец id.Создать запись в справочной таблице

Когда я создаю запись в users, я хочу создать новую запись с единственным идентификатором записи и идентификатором пользователя (в столбце с FOREIGN KEY).

Должен ли я сделать два раза INSERT INTO?

+1

Какая СУБД вы используете? MySQL, SQL Server, Oracle, ...? –

+1

Я использую PhpMyAdmin и InnoDB. – JS96

ответ

1

Ваш запрос немного странный, я не понимаю логику процесса, который вы ищете. Если вы систематически создаете запись в users_info, когда вы создаете новый объект в users, почему вы используете две разные таблицы?

Это может быть полезно, если вы предоставите нам структуру своих таблиц и образец данных, чтобы прояснить вашу логику.

Как ответ на ваш вопрос, да, для этого требуется два оператора INSERT, но вы не обязаны писать оба утверждения каждый раз. Я предлагаю вам взглянуть на Triggers.

Если вы создали триггер AFTER INSERT на вашем столе users, вы сможете автоматизировать вставку в таблицу users_info по желанию. Механизм будет следующим:

  1. Вставьте новый пользователь в таблице users
  2. AFTER INSERT действия инициируются
  3. Спусковой создать соответствующую ссылку в таблице users_info

Надеется, что это поможет вы.

+0

Спасибо! Теперь все более ясно. :-) – JS96

Смежные вопросы