Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

mysql converte automaticamente strings para inteiro


Basta escrever suas consultas para que elas não usem campos numéricos como se fossem textuais.

Se id é um campo numérico, então seu where cláusula nunca pode ser útil. Sim, seria bom se o MySQL reclamasse ativamente sobre isso - mas fundamentalmente você não deveria estar escrevendo código que executa consultas ruins para começar.

Como essa consulta entrou em seu sistema? É o 'asdf' parte da entrada direta do usuário? Você pode usar SQL parametrizado em vez disso?

Se você realmente pretende para consultar um campo numérico, certifique-se de que sua entrada é numérica primeiro. Converta o texto para um inteiro em seu código de chamada, não no banco de dados.