Я немного не понимаю – при обновлении, вставке, удалении запросов result_metadata возвращает false? Потому как:
$meta = $stmt->result_metadata(); if($meta === false){ throw new Exception(...)); }
выдает исключение, когда я пытаюсь запустить обновление, вставить или удалить запрос. Но это должно быть ложным только по ошибке. (из справочника php)