У меня есть таблица MySQL, которая обновляется через веб-страницу.Некоторые столбцы отформатированы как целые числа.При попытке ввести "", "" или любую строку, которая не может быть автоматически округлена до целого числа, произойдет ошибка mysql.Вместо того, чтобы редактировать мой PHP для обработки этих исправлений, я хотел бы создать триггер ДО ТОГО, как ОБНОВИТЬ эту таблицу, который устанавливает значение поля в ноль, если оно является неправильным целочисленным значением.В другом сообщении о переполнении стека я обнаружил, что вы можете проверить целочисленное значение, используя ceil(field) = field
.Вот синтаксис триггера создания:
delimiter|
create trigger before_folding_update before update on daily_folding_report
for each row
begin
if ceil(new.jobnum) != new.jobnum then
set new.jobnum = 0;
end if;
end|
Если я поставлю do:
update daily_folding_report set jobnum = 'a'
Я все еще получаю ошибку: Incorrect integer value: 'a' for column 'jobnum' at row 1.
Кто-нибудь еще знает, как я могу это сделать?