Your trigger currently updates all rows, because there is no correlation to the inserted
pseudo-table, which contains only the records involved with the trigger invocation. To affect only the new rows:
ALTER TRIGGER [dbo].[AfterInsertTarget]
ON [dbo].[DMM_TARGET]
AFTER INSERT
AS
BEGIN
SET NOCOUNT ON;
UPDATE t SET ID_WEEK = 0
FROM dbo.DMM_TARGET AS t
WHERE EXISTS (SELECT 1 FROM inserted WHERE key = t.key);
END
GO
Or:
ALTER TRIGGER [dbo].[AfterInsertTarget]
ON [dbo].[DMM_TARGET]
AFTER INSERT
AS
BEGIN
SET NOCOUNT ON;
UPDATE t SET ID_WEEK = 0
FROM dbo.DMM_TARGET AS t
INNER JOIN inserted AS i
ON t.key = t.key;
END
GO
However it will be much easier to just create a default constraint on the ID_WEEK column.