Jeśli używasz MySQL>=5.0, użyj wyzwalacza:
CREATE TRIGGER setDefaultDate
BEFORE INSERT ON tableName
FOR EACH ROW
SET NEW.date = ADDDATE(curdate(), INTERVAL 30 DAY);
wyzwalacz
aktywuje się po wstawieniu do tableName
, ustawiając date
do teraz + 30 dni. Jeśli Twoja wstawka ustawia datę, zastąpi to ustawienie domyślne ze względu na BEFORE
. Data jest obliczana przy użyciu ADDDATE
.