Gratulacje, kretor Mój egrafik został zakończony. Jeżeli rejestrowałeś się w tym kreatorze, pamiętaj aby kliknąć w link potwierdzający, wysłany na Twój adres email. Jeżeli tego nie zrobisz, nie będziesz mógł się zalogować, a dodane przez Ciebie wpisy nie zostaną opublikowane.
mysql_unbuffered_query() wysyła
zapytanie SQL do serwera MySQL nie pobierając
i buforując wyniku, jak to czyni mysql_query().
Po pierwsze, zauważalnie oszczędza to pamięć, jeśli zapytania SQL
generują duże wyniki. Po drugie, można pracować na zbiorze wynikowym
już po odebraniu od bazy pierwszego wiersza. Nie trzeba czekać, aż
zakończy się działanie zapytania. Przy pracy z kilkoma połączeniami do
bazy, należy dodać opcjonalny argument
identyfikator_połączenia.
Parametry
zapytanie
Zapytanie SQL
identyfikator_połączenia
Połączenie MySQL.
Jeśli identyfikator połączenia nie zostanie podany, użyte zostanie ostatnie
połączenie otwarte przez mysql_connect(). Jeśli połączenie
takie nie zostanie znalezione, funkcja spróbuje nawiązać połączenie tak, jakby
wywołana została funkcja mysql_connect() bez argumentów.
Jeśli żadne połączenie nie zostanie znalezione lub nawiązane, wygenerowane
zostanie ostrzeżenie poziomu E_WARNING.
Zwracane wartości
Dla wyrażeń SELECT, SHOW, DESCRIBE lub EXPLAIN,
mysql_unbuffered_query()
zwraca zasób w przypadku sukcesu lub FALSE gdy
nastąpi niepowodzenie.
Dla innych typów wyrażeń SQL, UPDATE, DELETE, DROP, etc,
mysql_unbuffered_query() zwróci TRUE w przypadku
skucesu lub FALSE gdy nastąpi niepowodzenie.
Notatki
Notatka:
Oprócz korzyści, funkcja mysql_unbuffered_query()
wprowadza pewne ograniczenia: nie można użyć funkcji mysql_num_rows() i
mysql_data_seek() na zbiorze wyników zwróconym przez
mysql_unbuffered_query().
Trzeba także pobrać wszystkie wiersze wyniku niebuforowanego zapytania SQL przed wysłaniem
kolejnego.