В моем приложении у меня много зависимостей внешнего ключа и часто вставляются большие числа строк. То, что я сделал до сих пор, запускает одну вставку за раз и записывает идентификатор вставки. Это занимает много времени при вставке большого количества строк, даже когда apache и mysql запускаются на одном сервере.MySQL параллельные многострочные вставки - Insert ID Предположение
Мой вопрос в том, должен ли я изменить свое приложение, чтобы добавить несколько строк с одним INSERT, мог ли я принимать идентификаторы каждой строки, основываясь строго на последнем идентификаторе вставки, возвращаемом соединением mysql? Проблема заключается в том, что существует случайная ситуация, когда более одного человека помещают большие объемы информации в базу данных одновременно.
Из того, что я смог определить, кажется безопасным предположить, что при вставке 500 строк ваши идентификаторы вставки будут варьироваться от (lastInsertID) до (lastInsertID + 499), независимо от того, имеет ли запрос из другого соединения началось или закончилось за время, необходимое для завершения, но я хочу быть уверенным, что это принято как безопасная практика.
Я в основном работаю с InnoDB, но там есть и MyISAM.
Спасибо всем!
-Jer
Фантастический. – SuperJer