Лучше использовать транзакцию, если какой-либо запрос не выполнен, по крайней мере, другие обновления можно откатить.
ИЛИ справиться самостоятельно
Если шаг 3 завершится неудачно, вы получите сообщение об ошибке из mysql, сохраните это сообщение в переменной и проверьте его, если оно получено, удалите запись, вставленную в 1 шаг.
Это все, что обрабатывать транзакции. Вы должны использовать транзакцию.