Basicamente, com um
INSTEAD OF INSERT
acionador, você pode conseguir o que está procurando - basta ler os dados do INSERTED
pseudo tabela, modifique-a e insira-a na tabela Então, seu gatilho ficaria mais ou menos assim:
CREATE TRIGGER YourTrigger ON dbo.YourTable
INSTEAD OF INSERT
AS
SET NOCOUNT ON
-- do the INSERT based on the INSERTED pseudo table, modify data as needed
INSERT INTO dbo.YourTable(Col1, Col2, ....., ColN)
SELECT
Col1, 2 * Col2, ....., N * ColN
FROM
INSERTED
Claro, você também pode adicionar, por exemplo, verifica na forma de
WHERE
cláusula para esse SELECT .... FROM INSERTED
declaração para, por exemplo, ignore certas linhas - as possibilidades são infinitas!