Triggers 在sybase中为所有插入、更新和删除操作编写一个触发器
我有一个要求,当任何操作插入、更新和删除将在特定表上发生时,我想在sybase中编写一个触发器 语法我知道,但我的问题是,我希望每次根据操作插入、更新和删除执行不同的操作 如何将此条件置于触发器中 像 如果插入 --执行插入特定操作 如果更新 --执行特定于更新的操作 如果删除Triggers 在sybase中为所有插入、更新和删除操作编写一个触发器,triggers,sybase,Triggers,Sybase,我有一个要求,当任何操作插入、更新和删除将在特定表上发生时,我想在sybase中编写一个触发器 语法我知道,但我的问题是,我希望每次根据操作插入、更新和删除执行不同的操作 如何将此条件置于触发器中 像 如果插入 --执行插入特定操作 如果更新 --执行特定于更新的操作 如果删除 --执行删除特定操作我假设此问题与SAP/Sybase Adaptive Server Enterprise(ASE)有关。你没有明确说明这一点 可以根据插入表和删除表的计数来区分行为 例如,您可以编写如下内容: cre
--执行删除特定操作我假设此问题与SAP/Sybase Adaptive Server Enterprise(ASE)有关。你没有明确说明这一点 可以根据插入表和删除表的计数来区分行为 例如,您可以编写如下内容:
create trigger titles_trg on titles for insert, update, delete as
declare @inserted_cnt int, @deleted_cnt int
select @inserted_cnt = count(*) from inserted
select @deleted_cnt = count(*) from deleted
--insert command
if @inserted_cnt > 0 and @deleted_cnt = 0
begin
...
end
else
--delete command
if @inserted_cnt = 0 and @deleted_cnt > 0
begin
...
end
--update command
else
begin
...
end
go
是的,我只是在说SAP。我认为这是有道理的,谢谢你的帮助。