Ако изрично задавате стойността на NULL във вашето вмъкване, но искате MySQL да замени NULL с 0, един от начините да направите това е да дефинирате колоната, която позволява NULL в CREATE TABLE
оператор и след това заменете NULL с TRIGGER
.
Нещо като това:
CREATE TABLE `listings` (
`ListingID` int(11) NOT NULL,
`BathsFull` int(6) NULL DEFAULT 0,
PRIMARY KEY (`ListingID`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
delimiter $$
create trigger tr_b_ins_listings before insert on listings for each row
begin
set new.BathsFull = coalesce(new.BathsFull,0);
end $$
delimiter ;
Опитайте го сами в тази SQL Fiddle