Wpdb-> insert () не вставляет новую строку после последнего

В JavaScript я использую вызов Ajax, и я отправляю массив магазинов.
За исключением последнего элемента в массиве, все магазины уже существуют в БД.
Последний элемент – новый магазин.
PHP-код должен получить массив и обновить все магазины, которые уже находятся в БД, и вставить новый после последней строки таблицы.
PHP-код использует $ wpdb-> insert () для вставки последнего магазина, но по какой-то причине он не всегда вставляет его после последней строки таблицы.
Параметры вставки включают значения для всех полей, кроме индекса. Это поле отмечено как auto_increment в БД, и действительно вставленная строка получает ожидаемый индексный номер.
Но он не вставлен после последней строки, как ожидалось.
Что может быть причиной?

Вот код php:

function updateshops($shopsArray){ global $wpdb; $sArray = $_POST["shopsArray"]; $aSize = sizeof($sArray); for ($i=0; $i<$aSize; $i++) { if ($sArray[$i]['shopId']!=-1) // update existing records $wpdb->update( 'wp_shops', array( 'shopName'=>$sArray[$i]['shopName'], 'shopAddress'=>$sArray[$i]['shopAddress'] ), array('shopId'=>$sArray[$i]['shopId'])); else // add new records $wpdb->insert( 'wp_shops', array( 'userId'=>$sArray[0]['userId'], 'shopName'=>$sArray[$i]['shopName'], 'shopAddress'=>$sArray[$i]['shopAddress'], 'shopLat'=>45, 'shopLng'=>20 )); } } 

Solutions Collecting From Web of "Wpdb-> insert () не вставляет новую строку после последнего"