sql >> Database >  >> RDS >> Mysql

mysql cast automatisch strings naar integer

Schrijf uw zoekopdrachten zodat ze geen numerieke velden gebruiken alsof het tekstuele velden zijn.

Als id is een numeriek veld, dan is uw where clausule kan nooit nuttig zijn. Ja, het zou goed zijn als MySQL er actief over zou klagen - maar in principe zou je geen code moeten schrijven die om te beginnen slechte queries uitvoert.

Hoe is die vraag uw systeem binnengekomen? Is de 'asdf' deel directe gebruikersinvoer? Kun je in plaats daarvan SQL met parameters gebruiken?

Als je echt van plan bent om een ​​numeriek veld te bevragen, moet u ervoor zorgen dat uw invoer eerst numeriek is. Converteer de tekst naar een geheel getal in uw oproepcode, niet in de database.



  1. Ideaal veldtype voor binaire gegevens met vaste breedte

  2. rijnummer verhogen wanneer waarde van veld verandert in Oracle

  3. Hoe de mysql-poort 3306-fout op wamp op te lossen?

  4. PHP-afbeeldingsgrootte wijzigen