sql >> Databáze >  >> RDS >> Mysql

mysql automaticky přetypuje řetězce na celé číslo

Stačí napsat své dotazy tak, aby nepoužívaly číselná pole, jako by to byla textová.

Pokud id je číselné pole a potom vaše where doložka nemůže být nikdy užitečná. Ano, bylo by dobré, kdyby si na to MySQL aktivně stěžovala – ale v zásadě byste neměli psát kód, který spouští špatné dotazy.

Jak se tento dotaz dostal do vašeho systému? Je 'asdf' část přímý vstup uživatele? Můžete místo toho použít parametrizované SQL?

Pokud to skutečně máte v úmyslu při dotazu na číselné pole byste se měli ujistit, že váš vstup je nejprve číselný. Převeďte text ve svém volacím kódu na celé číslo, ne v databázi.



  1. Jak zálohovat databázi Moodle MariaDB

  2. Naformátujte MySQL pomocí CONCAT

  3. codeigniter - databáze :jak aktualizovat více tabulek jediným aktualizačním dotazem

  4. Jak používat AI pro ladění SQL pro skutečný automatizovaný proces