ciao!
ho un problema con il MERGE in SQL Server.
in pratica se c'è MATCH lo mando un update funziona.
sennò deve fare la insert, ma non funziona.
nel senso che non trovo il record, però non mi da errore.
codice:
MERGE INTO Timesheet_ore AS s
USING (SELECT tlo_timesheet,
tlo_fascia_oraria,
tlo_tipo_incarico
FROM Timesheet_ore
WHERE tlo_timesheet = 100
AND tlo_fascia_oraria = 3
AND tlo_tipo_incarico = 'UFFICIOPS') AS t
ON (s.tlo_timesheet = t.tlo_timesheet
AND s.tlo_fascia_oraria = t.tlo_fascia_oraria
AND s.tlo_tipo_incarico = t.tlo_tipo_incarico)
WHEN MATCHED THEN
UPDATE
SET tlo_data_da = GETDATE(),
tlo_data_a = GETDATE(),
tlo_minuti_lavorati = 1000,
tlo_note = '',
tlo_data_modifica = GETDATE()
WHEN NOT MATCHED THEN
INSERT (tlo_timesheet, tlo_data_da, tlo_data_a, tlo_minuti_lavorati, tlo_fascia_oraria, tlo_tipo_incarico, tlo_note,
tlo_data_aggiunta, tlo_data_modifica)
VALUES (100, GETDATE(), GETDATE(), 1000, 3, 'UFFICIOPS', 'note', GETDATE(), GETDATE());