存儲過程&觸發(fā)器

--創(chuàng)建存儲過程

create procedure tj
@xm nvarchar(50),@sex char(2),@age int,@bz nvarchar(50)
as
begin
  insert into stu values (@xm,@sex,@age,@bz)
end
--調(diào)用存儲過程
exec tj @xm='小明' ,@sex='男',@age=11 ,@bz='萬能的小明'
--查看存儲過程
sp_helptext tj  --單個
exec sp_stored_procedures --全部
--刪除存儲過程
drop proc tj

--after 觸發(fā)器 操作之后執(zhí)行事件

create trigger cfq1    
on stu  --觸發(fā)表
after insert  --觸發(fā)事件
as  --觸發(fā)后做的事件
if insert(bz)
begin
    print '添加了一條記錄'
end

--instead of 觸發(fā)器 操作之前先執(zhí)行begin..end,操作的約束。

alter trigger cfq2
on stu
instead of update
as
begin
    print '先執(zhí)行我!'
end
--alter trigger修改觸發(fā)器的邏輯,名字不可改!
--查看觸發(fā)器
exec sp_helptext cfq2
select * from sysobjects where xtype='TR'
--刪除觸發(fā)器
drop trigger cfq3
--禁用觸發(fā)器:disable
alter table stu disable trigger cfq2
--恢復(fù)觸發(fā)器:enable
alter table stu enable trigger cfq2
--禁用/啟用(disable/enable) 所有表上的所有觸發(fā)器
exec sp_msforeachtable 'alter table ? disable trigger all'
--                    ['alter table ? enable trigger all']

exec --調(diào)用自定義sql語句或存儲過程

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容