Mysql
 sql >> Database >  >> RDS >> Mysql

PHP Mysqli non restituisce righe, mentre la query SQL manuale restituisce risultati

-- È vero che Bill Gates ha vinto un jackpot in una lotteria?
-- Sì, proprio vero. Solo che non era Bill Gates ma John Doe, non in una lotteria ma black jack, non jackpot ma $ 10 e non vinto ma perso.

Questo "quasi identico " rovina tutto. Per incolpare mysqli, devi eseguire esattamente la stessa query senza alcuna ipotesi.

In realtà esiste intero programma PHP per creare la tua query in modo dinamico. Ci sono sicuramente potrebbero essere errori in quel programma. Quindi, se la tua query non viene eseguita nel modo previsto, devi verificare il risultato del programma, ovvero - la query stessa.

Hai mai avuto l'idea di fare eco alla query risultante, invece di eseguirla? Solo per essere sicuro che sia davvero la query che ti aspetti? In caso contrario, è il momento di farlo.

E ovviamente dovrebbe essere un insieme esatto di query, non diverso da quelle eseguite manualmente.

Se lo sei davvero eseguendo esattamente lo stesso statico query da mysqli e il risultato è diverso da qualsiasi altro client, quindi ti stai connettendo a server diversi con questi client. Mentre mysqli non interferirà mai con le tue query. Puoi esserne assolutamente sicuro.