Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Problem sa rollback u mysqli

[es] :: PHP :: Problem sa rollback u mysqli

[ Pregleda: 1293 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

krstak84
student

Član broj: 210622
Poruke: 64
95.180.27.*



Profil

icon Problem sa rollback u mysqli01.06.2010. u 05:51 - pre 169 meseci
Naime, nisam bas siguran da li je problem u rollback funkciji, ali negde definitivno postoji.
Ovako glasi moj kod:

Code:

$m = new mysqli("localhost", "root", "", "baza");
$m->autocommit(false);
echo $m->query("INSERT INTO tbl1 VALUES (7)");
echo $m->rollback();
$m->close();


Kada pokrenem ovaj kod i startujem, mislim da bi logicno bilo da se ne upise nista, medjutim meni se u bazi posle izvrsavanje ovog koda ipak upisalo u tabali tbl1 vrednost 7. Tabela tbl1 sadrzi samo jedno polje "id".

ovo echo sto sam stavio ispred ova dva reda i sluzi mi da vidim da li je vratilo true za obe izvrsene naredbe i na ekranu je ispisalo dve jedinice, sto znaci da su obe naredbe izvrsene kako treba.

kada sam proverio ovaj kod :

Code:

$m = new mysqli("localhost", "root", "", "baza");
$m->autocommit(false);
$result = $m->query("SELECT @@autocommit");
if ($result) {
      $row = $result->fetch_row();
      printf("Autocommit is %s\n", $row[0]);
      $result->free();
}else{
     echo "JOK";
}
$m->close();


na ekranu se pojavilo Autocommit is 0, sto zanci da je autocommit setovano na false. Stvarno mi nije jasno u cemu je problem.
Ima li neko ideju?
Hvala.
 
Odgovor na temu

agvozden
Aleksandar Gvozden
founder
Info-G
Beograd

Član broj: 37813
Poruke: 1123
*.static.isp.telekom.rs.

Sajt: www.gvozden.info


+68 Profil

icon Re: Problem sa rollback u mysqli01.06.2010. u 10:24 - pre 169 meseci
Nisam radio sa mysqli, ali mi se cini da ti nedostaje BEGIN?

EDIT:
ocigledno da nema "begin", izgleda da ti je kod ok, mozda je logicka greska, da si ovu vrednost vec imao u tabeli?




[Ovu poruku je menjao agvozden dana 01.06.2010. u 11:55 GMT+1]
 
Odgovor na temu

vatri
Banja Luka, RS

Član broj: 68697
Poruke: 1006
*.static.stelkom.net.



+18 Profil

icon Re: Problem sa rollback u mysqli01.06.2010. u 11:00 - pre 169 meseci
I ja sam testirao kod sebe i isto mi ne radi. Da nije neki bug kod klase?!

Evo u attachmentu moj kod!
Prikačeni fajlovi
 
Odgovor na temu

krstak84
student

Član broj: 210622
Poruke: 64
95.180.27.*



Profil

icon Re: Problem sa rollback u mysqli01.06.2010. u 11:59 - pre 169 meseci
Citat:
agvozden: Nisam radio sa mysqli, ali mi se cini da ti nedostaje BEGIN?

EDIT:
ocigledno da nema "begin", izgleda da ti je kod ok, mozda je logicka greska, da si ovu vrednost vec imao u tabeli?




[Ovu poruku je menjao agvozden dana 01.06.2010. u 11:55 GMT+1]


Nisam imao, ocistio sam tabelu, pokusao da izvrsim i ono je ponovo upisalo, a trebalo bi na je ne upise.

Citat:
vatri: I ja sam testirao kod sebe i isto mi ne radi. Da nije neki bug kod klase?!

Evo u attachmentu moj kod!


Ako mislis da je greska u klasi mysqli, mislim da nije jer sam je to skoro koristio i isprobavao i radilo je ok, ali sada nece a ne znam zasto.
Ovakve greske kao ova me izludjuju.
 
Odgovor na temu

Nikola Poša
Backend (PHP) developer
Beograd

Član broj: 173839
Poruke: 1616
*.adsl-1.sezampro.yu.



+33 Profil

icon Re: Problem sa rollback u mysqli01.06.2010. u 16:19 - pre 169 meseci
A da nije slučajno storage engine tvoje MySQL tabele npr. MyISAM, budući da isti NE podržava transakcije? Da bi ovaj tvoj kod radio, tvoju tabelu u bazi mora da pokreće neki transaction-aware engine, a najpoznatiji, pa i najbolji je InnoDB.
 
Odgovor na temu

vatri
Banja Luka, RS

Član broj: 68697
Poruke: 1006
*.dynamic.dsl.t-2.net.



+18 Profil

icon Re: Problem sa rollback u mysqli01.06.2010. u 16:30 - pre 169 meseci
LOL :)

A fino pise u manualu:

Note: This function doesn't work with non transactional table types (like MyISAM or ISAM).
 
Odgovor na temu

krstak84
student

Član broj: 210622
Poruke: 64
95.180.27.*



Profil

icon Re: Problem sa rollback u mysqli01.06.2010. u 18:38 - pre 169 meseci
Ljudi hvala vam na pomoci, upravu ste bili za MyISAM. Sad sam promenio u InnoDB i sve radi super.
Hvala jos jednom!
 
Odgovor na temu

[es] :: PHP :: Problem sa rollback u mysqli

[ Pregleda: 1293 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.