Hola Carva,
Ya llevo días con esto pero no he podido resolver mis problemas, estoy haciendo algo mal pero no se aun que, seguro que será una chorrada pero no logro dar con ello. En fin como te decía, he modificado tu trigger, pero no lo he podido probar por lo que te decía. Así que si puedes échale un vistazo y da tu visto bueno
Este es el código:
CREATE TRIGGER [INSERT_TIMER_RECORD] AFTER INSERT ON [timer_record_table]
BEGIN
UPDATE timer_record_table SET
timestamp_Start=timestamp_Start - 600,
timestamp_Offset=timestamp_Offset + 1800,
date_year=strftime('%Y',(datetime(timestamp_start - 600, 'unixepoch', '+1 hours'))),
date_month=strftime('%m',(datetime(timestamp_start - 600, 'unixepoch', '+1 hours'))),
date_day=strftime('%d',(datetime(timestamp_start - 600, 'unixepoch', '+1 hours'))),
start_hour=strftime('%H',(datetime(timestamp_start - 600, 'unixepoch', '+1 hours'))),
start_minute=strftime('%S',(datetime(timestamp_sta rt - 600, 'unixepoch', '+1 hours'))),
length_hour=strftime('%H',datetime((strftime('%s', '2000-01-01 00:00:00') + timestamp_Offset + 1800), 'unixepoch')),
length_minute=strftime('%M',datetime((strftime('%s ','2000-01-01 00:00:00') + timestamp_Offset + 1800), 'unixepoch'))
WHERE ID = new.ID and event_id>0;
END;
Como ves, tomo como base los campos timestamp_start y timestamp_offset, y en función de estos construyo el resto de campos que me parecen a mi que son solo informativos. Y con esta solución da igual que lo hagas a las 00 horas del dia 1 de enero del 2011, porque actualiza todos los campos.
Ya me cuentas.