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

MySQL-heltalssammenligning ignorerer efterfølgende alfategn

Det er almindelig adfærd i de fleste programmeringssprog at fortolke førende tal som et tal, når en streng konverteres til et tal.

Der er et par måder at håndtere dette på:

Brug forberedte udsagn, og definer pladsholderen, hvor du sætter værdien til at være af en numerisk type. Dette vil forhindre strenge i overhovedet at blive sat ind der.

Tjek på et højere lag af applikationen for at validere input og sørg for, at det er numerisk.

Brug det BINÆRE søgeord i mysql (jeg gætter bare på, at dette ville virke, har faktisk aldrig prøvet det, da jeg altid lige har implementeret et ordentligt valideringssystem, før jeg kører en forespørgsel) -

SELECT *
FROM table 
WHERE BINARY ID = '32anystring';


  1. Sådan forbinder du fra Windows-kommandoprompten til mysql-kommandolinjen

  2. Sådan sikkerhedskopieres din Chamilo LMS MySQL-database

  3. SQL Server SHOWPLAN_ALL

  4. Hvordan kan jeg finde Unicode/ikke-ASCII-tegn i et NTEXT-felt i en SQL Server 2005-tabel?