Ja, i MySQL er triggere den eneste måde at gøre dette på. MySQL understøtter ikke begrænsninger.
Din trigger er ikke helt rigtig. Først har du opdatering på dato
, men dette skal være opdatering på
create trigger date_check_update
before update on <the table name goes here>
for each row
begin
if (old.date IS NOT NULL) then
SIGNAL 'date already set'
end if ;
end;
En insert
trigger på denne tilstand giver ikke mening.