Det går inte. Du får istället ha ett fält med datumet då posten skapades. För att sedan automatisera det hela får du skapa en schemalagd aktivitet på servern som kör ett script som kontrollerar ifall det gått 16 dagar eller mer.
Någon automation i den benämningen finns ej i MySQL.
Den här frågan dyker upp ofta. Du vet väl om att du kan söka efter äldre trådar?
CREATE EVENT myevent
ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 24 HOUR
DO
UPDATE mydatabase.orderrad SET faktureras = 1 WHERE orderdate < TIMESTAMPADD(DAY,-16,NOW());
CURRENT_TIMESTAMP kan du byta ut mot en timestamp vid midnatt e.dyl.
CREATE EVENT myevent
ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 24 HOUR
DO
UPDATE mydatabase.orderrad SET faktureras = 1 WHERE orderdate < TIMESTAMPADD(DAY,-16,NOW());
CURRENT_TIMESTAMP kan du byta ut mot en timestamp vid midnatt e.dyl.
Jag kollade lite närmare på det där med att köra det som ett event Jojoxx,
om man sparar orderdatumet i tabellen med TIMESTAMP DEFAULT CURRENT_TIMESTAMP, så borde det kanske fungera med något liknande detta, eller är jag helt ute och seglar?
CREATE EVENT newEvent
ON SCHEDULE EVERY 1 DAY DO
UPDATE orderrader SET faktureras=1 WHERE orderdatumet <= DATE_SUB(NOW(), INTERVAL 16 DAY) ;