Как правильно обрабатывать ошибки с транзакциями и подготовленными выписками при использовании mysqli?
Отрывок:
<?php
$conn = require_once 'dbconn.php';
$conn->autocommit(FALSE);
$stmt_ins_option = $conn->prepare('INSERT INTO options(option_name) VALUES(?)');
$option_name = 'foo';
$stmt_ins_option->bind_param('s', $option_name);
$stmt_ins_option->execute();
$conn->commit();
if($conn->errno) {
$conn->rollback();
echo $conn->error;
}
Он не будет добавлен во второй раз, потому что в этом столбце есть УНИКАЛЬНОЕ ограничение.
Однако скрипт также не сообщит об ошибке.
Чего мне не хватает?