The logic is:
1) insert data into
HistoryTable
before deleting data from
SourceTable
2) delete data from
SourceTable
INSERT INTO HistoryTable (<field_list>)
SELECT <field_list>
FROM SourceTable
WHERE PKey = @PKey
DELETE
FROM SourceTable
WHERE PKey = @PKey