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

MYSQL:Hur man gör NULL eller tom data som standard till 0 under infogning

Om du uttryckligen ställer in värdet till NULL i din infogning, men vill att MySQL ska ersätta NULL med 0, är ​​ett sätt att göra det att definiera kolumnen för att tillåta NULL i CREATE TABLE och ersätt sedan NULL med en TRIGGER .

Något så här:

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 ;

Prova själv i denna SQL-fiol



  1. Hur lägger man flera uppdateringar i en trigger?

  2. Hur begränsar jag åtkomst till phpmyadmin?

  3. phpMyAdmin - Vad en tilde (~) betyder i rader kolumn?

  4. SQL Server 2008 - Bifoga mdf utan logg - Operativsystemfel 5:5 (Åtkomst nekad.)