sql >> Database >  >> RDS >> Mysql

mysqli::query() retourneert true op geselecteerde query's

Dit klinkt als een soort raceconditie. Je gebruikt MyISAM, dus het is mogelijk dat een update wordt uitgesteld (vooral als er veel verkeer op die tafel is).

De true return geeft aan dat uw select query correct voltooid maar geretourneerd en lege resultaatset (geen rijen). Als uw logica wanneer dat gebeurt, is om bijvoorbeeld 50 milliseconden te wachten en het opnieuw te proberen, zult u merken dat de dingen correct werken.

Bewerken :U kunt proberen de tabel te vergrendelen voordat u de UPDATE uitvoert totdat u de laatste SELECT hebt gedaan. Maar dat kan de prestaties van andere delen van uw app verslechteren. Het beste wat u kunt doen, is uw app robuust maken in het licht van race-omstandigheden.




  1. MySQL Rollup gebruiken

  2. UPDATE-query werkt niet met LIMIT

  3. Hulp bij SQL-code voor het vinden van de nieuwste record op basis van ID

  4. Oracle.ManagedDataAccess met Oracle 8.1.7 DB