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

mysql autocasting řetězec na celé číslo

Z dokumentů:

Váš případ spadá pod „všechny ostatní případy“.

Řetězec bude přetypován na FLOAT a poté porovnat s vaším int_val .

Pokud řetězec vrhá pěkně (hodnoty jako '1' , '0.1' nebo '1E5' ), výsledná hodnota bude porovnána s celým číslem.

Pokud ne (řekněme, že předáte hodnotu jako '1235xxx' ), možné úvodní číslice budou převedeny na plovoucí číslo (0 pokud žádný) a zbytek je zkrácen. Kromě toho bude vygenerováno varování.

Důvodem pro předání id v řetězci může být to, že vaše id nemusí být nutně celé číslo. Může to být také řetězec nebo datum.

Pravděpodobně má ORM obecný kód pro generování DELETE dotaz, který by fungoval na jakémkoli datovém typu.



  1. PHP, MySQL:nelze vysvětlit tuto nedefinovanou chybu indexu

  2. Kontejner MySQL Docker neukládá data do nového obrazu

  3. Upozornění:PDO::__construct():[2002] Žádný takový soubor nebo adresář (pokouším se připojit přes unix:///tmp/mysql.sock) v

  4. Materializované pohledy s MySQL