【发布时间】:2014-08-28 16:53:49
【问题描述】:
我有一个“而不是删除”触发器,它“忽略”某些记录的删除(因此,实际上,某些记录不能被删除)。到目前为止,这非常有效。
现在,我通过 MS Access 中的链接表连接到表。如果我在那里删除记录,则 Access 会删除它们,从而将它们“显示”为已删除。只有当我刷新表格时,才会再次出现被忽略的记录。
所以最后触发器起作用了,但是用户得到了错误的反馈。能否以某种方式重写删除触发器,以便 MS Access 知道无法删除记录?
触发器如下所示:
CREATE TRIGGER trig ON tblX
INSTEAD OF DELETE
AS
BEGIN
SET NOCOUNT ON;
DELETE FROM tblX
WHERE IDField IN
(
SELECT IDField
FROM deleted
WHERE (...conditions...)
);
END
【问题讨论】:
-
如果您向我们提供您现在使用的代码?
-
@JenZzz 好的,我已经添加了代码
-
基本上你是说,你有一个表打开查看 Ms Access 并删除 SQL Server 中的记录。除非您刷新/重新查询视图,否则 Access 女士会将记录显示为 #Deleted?为什么不在访问表单中使用删除后事件并输入代码 me.requery/refresh?
-
@krishKM 不,Access 不会将其显示为#Deleted,它会在视觉上删除记录(因此对于用户来说,看起来记录“真的”已被删除)
标签: sql-server ms-access