alter trigger trigger_学生_Delete on 学生 instead of Delete as begin select 学号, 姓名 from deleted end delete from 学生 where 学号 = 4
| 对表的操作 | Inserted逻辑表 | Deleted逻辑表 |
|---|---|---|
| 增加记录(insert) | 存放增加的记录 | 无 |
| 删除记录(delete) | 无 | 存放被删除的记录 |
| 修改记录(update) | 存放更新后的记录 | 存放更新前的记录 |
create trigger trigger_name
on {table_name|view_name}
{After|Instead of} {insert|update|delete}
as 相应T-SQL语句
alter trigger trigger_name
on {table_name|view_name}
{After|Instead of} {insert|update|delete}
as 相应T-SQL语句
drop trigger trigger_name
select * from sysobjects where xtype='TR'
exec sp_helptext '触发器名'
alter trigger trigger_学生_Delete
on 学生
instead of Delete
as
begin
if not exists(select * from 借书记录, deleted where 借书记录.学号 = deleted.学号)
delete from 学生 where 学生.学号 in (select 学号 from deleted)
end
create trigger trigger_订单_insert
on 订单
after insert
as
if (select 状态 from 商品, inserted where 商品.pid = inserted.pid)=1
begin
print 'the goods is being processed'
print 'the order cannot be committed'
rollback transaction --回滚,避免加入
end
create trigger trigger_订单_insert2 on 订单 after insert as update 商品 set 数量 = 数量 - inserted.数量 from 商品, inserted where 商品.pid = inserted.pid
create trigger goodsdelete trigger_商品_delete on 商品 after delete as delete from 订单 where 订单.pid in (select pid from deleted)
create trigger trigger_订单_update
on 订单
after update
as
if update(订单日期)
begin
raiserror('订单日期不能手动修改',10,1)
rollback transaction
end
create trigger trigger_订单_insert3
on 订单
after insert
as
if (select count(*) from 商品, inserted where 商品.pid = inserted.pid)=0
begin
print '商品不存在'
rollback transaction
end
alter trigger trigger_订单_insert on 订单 for insert as insert into 订单日志 select inserted.Id, inserted.pid,inserted.数量 from inserted
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有