Mysql позволява множество NULL в уникално ограничение. Във вашия serial_number
колона замества NULL
със стойност и ограничението се задейства, вижте:
http://sqlfiddle.com/#!2/9dbd19/1
Направете колоната НЕ NULL и използвайте ''
който е празен.