Есть ли универсальный способ получения удаленных/вставленных/обновленных строк в триггер? Я хочу создать один триггер (я имею в виду один кусок кода в моем приложении), который должен работать на Oracle, Sql Server и Postgres. Является ли это возможным? Я использую драйверы odbc для подключения к различным dbs.Универсальный способ ODBC для получения удаленных строк в триггере
Он работает в SQL Server, но не в Oracle.
CREATE TRIGGER schema.trg_nameON schema.table_name
FOR DELETE
AS
BEGIN
DECLARE @id BIGINT;
SELECT @id = d.ID
FROM deleted d
DELETE
FROM schema.table_name
WHERE TOP_ID = @id;
END
и, кстати, это было бы очень плохой триггер на SQL-сервере, так как предполагает, что только одна запись когда-либо изменена, и это очень плохое предположение, которое вы не делаете при написании триггера. ANytimeyou имеет триггер на SQL-сервере, где вы устанавливаете значение для вставленного или удаляемого в скалярное varaiable, триггер является неправильным и его необходимо переписать. – HLGEM