Richard Deeming
Триггеры SQL не имеют опции "до". Единственные варианты - "После" или " вместо":
Создать триггер (Transact-SQL)[^]
Однако похоже, что вы просто хотите скопировать удаленные записи в другую таблицу. Для этого все, что вам нужно, - это триггер "после" и deleted
виртуальная таблица:
CREATE TRIGGER TR_Table1_SaveDeleted
ON dbo.Table1
AFTER DELETE
As
BEGIN
SET NOCOUNT ON;
INSERT INTO dbo.Table2
(
Code,
Name,
Phone,
DeletedBy,
Date
)
SELECT
Code,
Name,
Phone,
SUSER_NAME(),
GetUtcDate()
FROM
deleted
;
END;
MahmoudOmar
user_name (), его save user in sql, я хочу сохранить пользователя, который входит в программу.
Richard Deeming
Если вы используете проверку подлинности Windows для SQL, то они должны быть одинаковыми.
Если нет, то нет никакого способа узнать пользователя приложения из триггера SQL. Обновите код, чтобы использовать хранимую процедуру, передайте имя пользователя в качестве параметра и вставьте значения в архивную таблицу вручную.