Моето решение (с помощта на Zend) беше да ЗАКЛЮЧЯ таблицата, след това да поискам номер_елемента, да добавя резултата към заявката за вмъкване, да вмъкна и ОТКЛЮЧИ таблицата. Ето как да ЗАКЛЮЧИТЕ и ОТКЛЮЧИТЕ:
$sql = "LOCK TABLE items WRITE";
$this->getAdapter()->query($sql);
//run select to get last item_number
//append result to insert array
//insert
$sql = "UNLOCK TABLES";
$this->getAdapter()->query($sql);
Друг начин е да напишете заявката, така че стойността да бъде избрана по време на вмъкването. Ето един пример:
$sql = INSERT INTO items (item_id, item_family, item_name, item_number)
VALUES (item_id, item_family, item_name, (SELECT item_number FROM... )+1);
$this->getAdapter()->query($sql);
Повече информация за този вид заявка в MySQL Web