Когда вы запускаете запрос так:
$query = "SELECT * FROM table";
$result = odbc_exec($dbh, $query);
while ($row = odbc_fetch_array($result)) {
print_r($row);
}
Указывает ли ресурс, хранящийся в $ result, на данные, которые существуют на сервере, на котором работает php? Или указывает на данные в базе данных? Иными словами, поскольку цикл while делает свое дело, PHP взаимодействует с БД на каждой итерации или вытягивает эту строку $ из некоторого источника на стороне приложения?
Для меня важно, что у меня есть база данных, с которой я общаюсь через VPN, используя ODBC с PHP. В прошлые выходные произошло нечто странное, когда во время цикла происходили огромные паузы. Таким образом, между итерациями сценарий останавливает выполнение на секунды и до минут. Кажется, совершенно случайно, где это происходит. Мне интересно, нужно ли мне общаться с сервером через VPN каждую итерацию, и, возможно, соединение нестабильно или что-то не так с моим драйвером ODBC (FreeTDS).