Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP/PDO/ZF] problem z zamykaniem obsługi zapytania
juzwa
post 20.02.2007, 21:56:15
Post #1





Grupa: Zarejestrowani
Postów: 144
Pomógł: 0
Dołączył: 10.07.2006

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


uaktualniłem sobie xampa do 1.6.o - czyli jest tak PHP 5.2.1 MySQL 5.0.23

i jest problem z aplikacją - konkretnie z PDO - o ile pod PHP 5.1.6 nie było takich problemów tutaj się pojawiły

wywołuje jakies zapytanie w sposób następujący:

  1. <?php
  2. $db = Zend::registry('db');
  3. $stmt = $db -> prepare($sql);
  4. $stmt -> execute();
  5. $row = $stmt->fetch();
  6. $stmt->closeCursor();
  7. $stmt->null;
  8. ?>


a mimo to mam błąd

SQLSTATE[HY000]: General error: 2014 Cannot execute queries while other unbuffered queries are active. Consider using PDOStatement::fetchAll(). Alternatively, if your code is only ever going to run against mysql, you may enable query buffering by setting the PDO::MYSQL_ATTR_USE_BUFFERED_QUERY attribute.


wszędzie gdzie szukałem podpowiedzi widziałem rozwiązanie typu

$stmt->closeCursor();
$stmt->null; lub $stmt=null;

na końcu obsługi zapytania

a pomimo tego gdy po tym wszystkim występuje kolejne zapytanie

  1. <?php
  2. $db = Zend::registry('db');
  3. $stmt = $db -> prepare($sql);
  4. $stmt -> execute();
  5. $row = $stmt->fetch();
  6. $stmt->closeCursor();
  7. $stmt->null;
  8. ?>


to wywala mi błąd - nawet gdy - występuje takie coś

$stmt = $db->prepare($sql, array(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY => true));

to nic nie pomaga

jak to rozwiązać?
Go to the top of the page
+Quote Post
Maksymus007
post 25.02.2007, 00:13:43
Post #2





Grupa: Zarejestrowani
Postów: 22
Pomógł: 0
Dołączył: 21.01.2007

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


mam niestety to samo i niestety nie mam zielonego pojęcia co i jak...
Go to the top of the page
+Quote Post
SongoQ
post 25.02.2007, 04:09:39
Post #3





Grupa: Przyjaciele php.pl
Postów: 2 923
Pomógł: 9
Dołączył: 25.10.2004
Skąd: Rzeszów - studia / Warszawa - praca

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


Tak jak by sie kursor nie zamykal. Wykonaj ilosc rekordow + 1 razy metode fetch to oprozni buffor, moze to pomoze. Ostatnio ten temat juz sie pojawil. http://forum.php.pl/index.php?s=&showt...st&p=334936


--------------------
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 14:29