Rollback avec Perl DBI / Informix
Posted in 2000
Topics: General Discussion
Translated from English by DrWatson — View original
Bonjour, J'essayais de réaliser un simple test de rollback dans un script Perl. La documentation indique qu'AutoCommit doit être désactivé pour pouvoir effectuer un rollback, j'ai donc écrit $db->{AutoCommit} = 0; Cependant, Informix renvoie l'erreur suivante : DBD::Informix - Cannot unset AutoCommit for unlogged databases rollback ineffective with AutoCommit enabled at rollback.pl line 16. Comment puis-je passer la base de données en mode « journalisé » (Logged) ? Quels en sont les avantages et les inconvénients ? Cela nécessitera-t-il beaucoup plus de temps CPU ou d'espace disque ? Merci !
Eric Delaet <ericd@kava.dot.be> écrit :
> Bonjour,
>
> J'essayais de faire un simple test de rollback dans un script Perl.
> La documentation indique qu'AutoCommit doit être désactivé pour pouvoir faire un
> rollback, j'ai donc fait
>
> $db->{AutoCommit} = 0;
>
> Cependant, Informix se plaint avec l'erreur suivante :
>
> DBD::Informix - Cannot unset AutoCommit for unlogged databases
> rollback ineffective with AutoCommit enabled at rollback.pl line 16.
>
> Comment puis-je mettre la base de données en mode « Logged » ? Quels en sont les
> (in)convénients ? Cela nécessitera-t-il beaucoup plus de temps CPU ou d'espace disque ?
RTFM ?
Il vaut mieux lire la documentation et _comprendre_, plutôt que de suivre
un quelconque HOWTO minable du style « comment faire des choses que vous ne comprenez pas vraiment ».
Le chapitre sur le Logging dans le « Administrator's Guide » est un bon point de départ :)
La méthode minable (tirée de « Managing Database-Logging Status » dans l'Admin-guide) :
« Par exemple, pour ajouter la journalisation bufferisée à une base de données appelée stores_demo
avec ontape, exécutez la commande suivante :
% ontape -s -B stores_demo
»
Thomas