phpMyAdmin
 sql >> Database >  >> Database Tools >> phpMyAdmin

MYSQL:come impostare i dati NULL o vuoti su 0 durante l'inserimento

Se stai impostando esplicitamente il valore su NULL nel tuo inserto, ma vuoi che MySQL sostituisca NULL con 0, un modo per farlo è definire la colonna per consentire NULL nel CREATE TABLE istruzione e quindi sostituire NULL con un TRIGGER .

Qualcosa del genere:

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 ;

Provalo tu stesso in questo SQL Fiddle