Twój wyzwalacz można łatwo przekonwertować na formę z jednym stwierdzeniem:
CREATE TRIGGER myTrigger
BEFORE INSERT
ON myTable
FOR EACH ROW
SET NEW.my_timestamp = COALESCE(NEW.my_timestamp, NOW());
który nie wymaga ponownego przypisania ogranicznika.
Jeśli NULL jest wstawione do tej kolumny, ponieważ ta kolumna w ogóle nie jest wymieniona na liście kolumn zapytania INSERT, możesz po prostu użyć DEFAULT CURRENT_TIMESTAMP
w definicji kolumny, a wyzwalacz nie jest potrzebny. Ale jeśli wartość NULL jest ustawiona jawnie, ta metoda nie ma zastosowania.