Opis
resource
mysql_unbuffered_query
( string zapytanie [, resource identyfikator_połączenia [, int
typ_wyniku]])
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
.
Opcjonalny
argument
result_mode
może
przyjmować
wartość
MYSQL_USE_RESULT
lub
MYSQL_STORE_RESULT
.
Domyślnie
używana
jest
wartość
MYSQL_USE_RESULT
,
zatem
wynik
nie
jest
buforowany
.
Odpowiednikiem
użycia
drugiej
opcji
jest
funkcja
mysql_query(
)
.
Notatka
:
Oprócz
korzyści
,
funkcja
mysql_unbuffered_query(
)
wprowadza
pewne
ograniczenia
:
nie
można
użyć
funkcji
mysql_num_rows(
)
na
zbiorze
wyników
zwróconym
przez
mysql_unbuffered_query(
)
.
Trzeba
także
pobrać
wszystkie
wiersze
wyniku
niebuforowanego
zapytania
SQL
przed
wysłaniem
kolejnego
.
Patrz
także
:
mysql_query(
)
.