Bonjour,
j'essaie de cumuler transactions + multi_query.
Je récupère un fichier de requêtes à exécuter, qui en contient quelques dizaines, et il me semble que la meilleure manière de le faire est de procéder à un insert multiple via $mysqli->multi_query plutôt que de faire un mysql_query par insert (est ce que je me trompe ?).

Mon problème est que vraisemblablement, le commit n'agit pas. Il renvoie false mais rien de plus.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
$mysqli->autocommit(false);
$mysqli->multi_query($S_reqs);
if ($mysqli->error) {
	$mysqli->rollback();
}else{
	try{	
		$b = $mysqli->commit();
	}catch(Exception $e){
		print_r($e);
	}
}
Quelqu'un a-t-il une idée de la raison pour laquelle le commit ne s'effectue pas correctement ?
Je n'ai pas trouvé de mention précisant que c'était incompatible avec multi_query.

Merci d'avance !