Mysql
 sql >> база данни >  >> RDS >> Mysql

MySQL целочисленото сравнение игнорира последващите алфа знаци

Обичайно поведение в повечето езици за програмиране е водещите числа да се интерпретират като число, когато се преобразува низ в число.

Има няколко начина да се справите с това:

Използвайте подготвени оператори и дефинирайте заместителя, където поставяте стойността, да бъде от числов тип. Това ще предотврати поставянето на низове там изобщо.

Проверете на по-висок слой на приложението, за да потвърдите въвеждането и се уверете, че е числов.

Използвайте ключовата дума BINARY в mysql (само предполагам, че това ще работи, всъщност никога не съм го опитвал, тъй като винаги съм внедрял правилна система за валидиране, преди да стартирам заявка) -

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


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Две колони с автоматично нарастване или автоматично увеличение и същата стойност в друга колона

  2. Пребройте случаите на DISTINCT стойности

  3. Как да проектираме mysql база данни с множество наематели

  4. Проверка за максимална продължителност на последователни дни, които отговарят на определено условие

  5. Грешка (близо до ВКЛ. на позиция 25) при импортиране на таблица за WORDPRESS (Грешка с външен ключ)