0
я хочу, чтобы отменить два запроса, если есть сбой в одном из двух, мои тестов, которые выполняют первый Requette хотя второго мелиДва запросов в одной транзакции с откатом
public function testCommit(){
$host = "localhost";
$db = "agm_gs";
$user = "root";
$password = "";
$conn;
$conn = new mysqli($host, $user, $password, $db);
$sql1 = 'INSERT INTO livreur (id_livreur, code_livreur, nom_livreur, pre_livreur) VALUES (NULL, \'L001\', \'nom1\', \'pre1\')';
$sql2 = 'INSERT INTO otherTable XXXXXXXXXXincorrect queryXXXXXXXX';
try
{
$conn->begin_transaction();
$conn->autocommit(FALSE);
$conn->query($sql1);
$conn->query($sql2);
$conn->commit();
echo 'Sucess transaction';
}
catch(PDOException $e)
{
$conn->rollback();
echo ' Error transaction <br />' . $e->getMessage();
}
}
и этот мой результат вставки
я уже испытал это .... но проблема, если оба requettes на двух разных таблиц для Exemple $ SQL1 = 'INSERT INTO livreur (id_livreur, code_livreur, nom_livreur, pre_livreur) VALUES (NULL, \' L001 \» , \ 'nom1 \', \ 'pre1 \') '; и $ sql2 = 'INSERT INTO otherTable (id_livreur, code_livreur, nom_livreur, pre_livreur) VALUES (NULL, \' L002 \ ', \' nom2 \ ', \' pre2 \ ')'; – isom
использовать 2 разных запроса на вставку в этом случае @isom –
да я использовал 2 варианта запроса на вставку, но я хочу отменить самый первый, если второй неудачный – isom