Недавно столкнулся с PDO и MySQL когда в поле с типом int сохраняется значение с типом string через приведение к int. Т.е. пишут в input type='text' число 100,00 после PHP его приводит к (int)$data['value'] совершает математические операции превосходно понимая это как число, а не строку (на строку ругался), а после сохраняет в MySQL через PDO::PARAM_INT и вот не хочет сохранять, пока там не указываешь что PARAM_STR. ((%