MySQL es bastante laxo en la mayoría de las cosas, por defecto corrige estos errores haciendo todo lo posible para no fallar.
MySQL tiene un modo estricto que no permitiría ese comportamiento
http://dev.mysql .com/doc/refman/5.7/en/sql-mode.html#sql-mode-strict
Para más información.
Esta 'característica' también puede causar problemas de rendimiento, comparar una picadura con un int indexado hace que el índice sea inútil (en algunos casos, a veces el optimizador puede detectar esto y emitir solo la entrada)