Tester la Transaction manuel
Bonjour,
je voudrais tester le principe de transaction que j'ai voulu faire (bien que ce ne soit une vairs) mais ces quelque chode qui resemble:
voici mon code test :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| <?php
###################################################
require_once('../../Connections/connex.php');
$db = BD_CRUD::connecion(); //conectionBD
###################################################
try {
for($i=0; $i<10; $i++){
$nb = 99; $date ='2011-11-11';
if($i==7) {
$date = "$date";
$nb=99999999999999999999999999999999999999999999999999999999999999999999999999999999999999;
}
$data1 = array('direction' => $nb, 'emploi' => ($i*2), 'date' => $date, 'nbre' => $nb);
$count = $db->insert("mm_recrutementprofil_cdi_cadre_t",$data1); //echo $count . " sonel_typeaction(s) insertion(s)";
}
} catch (Zend_Db_Exception $e) {
printf("Erreur de la requête \"insert=> mm_age\" : %s", $e->getMessage());
$db->rollBack();
$rb = $db -> rollback();Zend_Debug::dump($rb, 'rollback');
Zend_Debug::dump('Rollback -> '.$e -> getMessage(), 'message');
}
?> |
donc déjà je voudrais faire bugs mon insertion à la 7em itération mais sa (Mais j'ai pas trouvais le moyen) pour tester si le rollback() marche ou pas ?
si quelqu'un a déjà tester sa ou utiliser, son commentaire sera le bien venu pour trouver la solution
Merci d'avance.
structure de la table:
Code:
1 2 3 4 5 6 7 8
| CREATE TABLE IF NOT EXISTS `mm_recrutementprofil_cdi_cadre_t` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`direction` varchar(5) NOT NULL,
`emploi` varchar(100) NOT NULL,
`date` date NOT NULL,
`nbre` int(2) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ; |