Gehe mal davon aus, dass WERKNR, WIRKSTOFF einen eindeutigen Wert darstellen.
Mit etwas in der Art könnte dann das Löschen etwas einfacher werden:
SQL-Code:
delete from Tabelle_Werk2 w2
where not exists (
select 1 from Tabelle_Werk1 w1
where w1.WERKNR = w2.WERKNR
and w1.WIRKSTOFF = w2.WIRKSTOFF
)
Du brauchst aber immer zwei Statements, das für's Insert bzw. Update und das zum Löschen. Eine Möglichkeit, dies alles in einem Statement umzusetzen, ist mir nicht bekannt.