Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak uniknąć niejawnej konwersji MySQL (Obcięta niepoprawna wartość PODWÓJNA)

Powinieneś raczej spróbować przesłać go jawnie za pomocą CAST lub CONVERT działają jak poniżej i nie licz na niejawne rzutowanie.

SELECT * FROM test WHERE sample_col = cast('foo' as int);

(OR)

SELECT * FROM test WHERE cast(sample_col as varchar) = 'foo';

Co więcej, nie ma sensu porównywać INT wpisz kolumnę z string value i AFAIK, nie ma takiego ustawienia, aby zatrzymać niejawne rzutowanie. jeśli naprawdę chcesz spowodować błąd, zamiast konwertować go na 0, rzutuj go jawnie; w takim przypadku wystąpi błąd.

Zobacz Konwersja typów w ocenie wyrażenia Po więcej informacji.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Highchart- Używanie PHP, MYSQL i jQuery.get do analizowania danych

  2. Wypełnij bazę danych Django

  3. Jak samodzielnie zaktualizować PHP+MySQL CMS?

  4. Zaktualizuj tabelę MySQL w kawałkach

  5. wstawiamy pole klucza głównego autoinkrementacji `id` jawnie w laravel 5.2