J'ai remarquer que lorsque je concatene des requetes SQl, si l'une des deux ne fonctionne pas alors l'autre n'est pas executer.
Dans mon cas (j'utilise php/postgres) je concatene donc les requetes sans faire de begin et commit (transaction) et cela donne le meme resultat.
Est-ce Postgres qui gere de sous cote cela ???
exemple :
<?
$requete="SELECT nom FROM login;";
$requete.="INSERT INTO login_old (nom) VALUES (nom);";
$resultat=pg_query($requete);
?>
Si une erreur apparait sur l'une des deux requetes aucune n'est execute.... C exactement ce que ce veut faire mais cela fait il le meme comportement que :
<?
$requete="BEGIN";
$requete.="SELECT nom FROM login;";
$requete.="INSERT INTO login_old (nom) VALUES (nom);";
$requete.="COMMIT";
$resultat=pg_query($requete);
?>
Partager