Når du bruger en forespørgsel uden buffer, betyder det, at dit resultatsæt bliver streamet ind fra MySQL-serveren. Så forbindelsen, som den (ubuffrede) forespørgsel kører på, er optaget, indtil du læser den sidste række af forespørgslen. I dit tilfælde er forbindelsen $MysqlConn
.
(En bufferforespørgsel slurrer hele resultatsættet ind i dit php-programs RAM og frigør forbindelsen. Du bruger ubuffrede forespørgsler, når hele dit resultatsæt ikke passer i RAM).
Ikke-buffrede forespørgsler skal lukkes eksplicit, når du er færdig med dem. Så tilføj en closeCursor()
ring
. Sådan.
while ($row = $ordStat->fetch(PDO::FETCH_ASSOC)) {
$order_ids[] = $row['order_id'];
}
$ordStat->closeCursor();
Der er ingen skade i at lukke bufferforespørgsler også. Det er en god vane.