Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zapytanie wykonuje się - od czasu do czasu, użycie START TRANSACTION
Adi32
post
Post #1





Grupa: Zarejestrowani
Postów: 348
Pomógł: 26
Dołączył: 8.10.2008
Skąd: Lublin

Ostrzeżenie: (0%)
-----


Witajcie,

mam dziwny problem.

Wprowadziłem do skryptu który aktualnie produkuje transakcje, a jako że do relacji z bazą danych używam klasy, przerobiłem ją trochę. Ale do rzeczy.

Tak wyglądają u mnie zapytanie na transakcjach:


  1. $db->transaction_on();
  2. $db->query("INSERT INTO user SET login='asd', pass = 'dsa';");
  3. $db->query("INSERT INTO user SET login='asd2', pass = 'dsa2';");
  4. $db->query("INSERT INTO user SET login='asd3', pass = 'dsa3';");
  5. $db->commit();



Dzięki temu, zapytanie które trafia do SQLa wygląda tak:

  1. START TRANSACTION;
  2. INSERT INTO user SET login='asd', pass = 'dsa';
  3. INSERT INTO user SET login='asd2', pass = 'dsa2';
  4. INSERT INTO user SET login='asd3', pass = 'dsa3';
  5. COMMIT;


I wykonuje się w taki sposób:

  1. $multi = new mysqli($this->host,$this->user,$this->pass,$this->db);
  2. $this->mysql_result = $multi->multi_query( $this->mysql_query );


I cały problem polega na tym, że gdy korzystam z transakcji prawie nigdy nie wykonuje się pierwsze zapytanie po "START TRANSACTION".
Gdy to samo zapytanie wkleje w konsole SQL w PhpMyAdminie wszystko działa cacy.

Ktoś wie o co może chodzić?

Ten post edytował Adi32 25.11.2011, 18:34:44
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 24.08.2025 - 12:42