mysql вставьте в несколько таблиц
, пытаясь вставить данные в несколько таблиц с одним запросом MySQL, может дать неожиданные результаты. Хотя может показаться, что множественные запросы решат проблему, корреляция идентификатора автоматического интеграмента из пользовательской таблицы с ручным идентификатором пользователя для таблицы профилей представляет собой задачу.
Использование транзакций и последнего_индер_ид ()
для внедрения в множественные tables в одном транзакциях ()
BEGIN; INSERT INTO users (username, password) VALUES('test', 'test'); INSERT INTO profiles (userid, bio, homepage) VALUES(LAST_INSERT_ID(),'Hello world!', 'http://www.stackoverflow.com'); COMMIT;
Альтернативно, хранение идентификатора автоматического введения в переменной позволяет ссылаться на его взыскание. Это может быть достигнуто с помощью:
mysql variable:
вставьте в ... Выберите LAST_INSERT_ID () в @mysql_variable_here; Вставьте в Table2 (@mysql_variable_here, ...);
INSERT INTO ... SELECT LAST_INSERT_ID() INTO @mysql_variable_here; INSERT INTO table2 (@mysql_variable_here, ...);php variable:
INSERT ... $result = mysql_query("SELECT LAST_INSERT_ID()"); $id = mysql_result($result, 0); INSERT INTO table2 ($id, ...);
]
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3