恥ずかしながら完全に誤解してた。
MySQL :: MySQL 5.6 Reference Manual :: 5.1.7
Server SQL Modes
For nontransactional tables, the behavior is the same for either
mode if the bad value occurs in the first row to be inserted or
updated: The statement is aborted and the table remains
unchanged. If the statement inserts or modifies multiple rows and
the bad value occurs in the second or later row, the result
depends on which strict mode is enabled:
For STRICT_ALL_TABLES, MySQL returns an error and ignores the
rest of the rows. However, because the earlier rows have been
inserted or updated, the result is a partial update. To avoid
this, use single-row statements, which can be aborted without
changing the table.
For STRICT_TRANS_TABLES, MySQL converts an invalid value to …
[さらに読む]