E se você realmente precisar de um carimbo de data/hora - faça um gatilho na inserção e atualização que atualiza a coluna com o mapa de data e hora atual.
CREATE TRIGGER dbo.trgAfterUpdate ON dbo.YourTable
AFTER INSERT, UPDATE
AS
UPDATE dbo.YourTable
SET last_changed = GETDATE()
FROM Inserted i
Para atualizar uma única linha (que foi editada ou inserida) você deve usar
CREATE TRIGGER dbo.trgAfterUpdate ON dbo.YourTable
AFTER INSERT, UPDATE
AS
UPDATE f set LastUpdate=GETDATE()
FROM
dbo.[YourTable] AS f
INNER JOIN inserted
AS i
ON f.rowID = i.rowID;
Estes devem ser tudo o que você precisa. GETUTCDATE() se você quiser em UTC (o que eu prefiro)
O SQL Server conhece absolutamente as linhas que processa
Sim, adivinhe - porque é exatamente isso que você diz ao SQL Server:Atualize todas as linhas na tabela.
Os conjuntos não têm linha atual;) É aí que o problema começa.
A única maneira de fazer isso exatamente como você deseja é na minha resposta no início:um timestamp. Devido aos equívocos, porém, adiciono um conselho:compre um livro sobre noções básicas de SQL.