主頁 > 知識庫 > SqlServer實現(xiàn)類似Oracle的before觸發(fā)器示例

SqlServer實現(xiàn)類似Oracle的before觸發(fā)器示例

熱門標簽:Linux服務(wù)器 服務(wù)外包 AI電銷 網(wǎng)站排名優(yōu)化 地方門戶網(wǎng)站 鐵路電話系統(tǒng) 百度競價排名 呼叫中心市場需求

1. 插入數(shù)據(jù)前判斷數(shù)據(jù)是否存在

SET ANSI_NULLS ON 
GO 
SET QUOTED_IDENTIFIER ON 
GO 
-- ============================================= 
-- Author: Author,,Name> 
-- Create date: Create Date,,> 
-- Description: Description,,> 
-- ============================================= 
alter TRIGGER CategoryExistTrigger 
ON ProductCategory 
instead of insert 
AS 

declare @categoryName varchar(50); 
BEGIN 
-- SET NOCOUNT ON added to prevent extra result sets from 
-- interfering with SELECT statements. 
SET NOCOUNT ON; 

-- Insert statements for trigger here 
select @categoryName = CategoryName from inserted; 
if exists(select * from ProductCategory where CategoryName =@categoryName) 
begin 
print 'Category exists..' 
end; 
else 
begin 
insert into ProductCategory select * from inserted; 
end; 

END

2. 刪除表中數(shù)據(jù)時需要先刪除外鍵表的數(shù)據(jù)

SET ANSI_NULLS ON 
GO 
SET QUOTED_IDENTIFIER ON 
GO 
-- ============================================= 
-- Author: Author,,Name> 
-- Create date: Create Date,,> 
-- Description: Description,,> 
-- ============================================= 
alter TRIGGER DeleteOrderTrigger 
ON OrderHeader 
instead of delete 
AS 
declare @OrderId varchar(50); 
BEGIN 

SET NOCOUNT ON; 
select @OrderId = OrderId from deleted; 
delete from OrderLine where OrderId = @OrderId; 

END 
GO
您可能感興趣的文章:
  • 關(guān)于喜憂參半的SQL Server觸發(fā)器詳解
  • 利用SQL Server觸發(fā)器實現(xiàn)表的歷史修改痕跡記錄
  • SQLSERVER對加密的存儲過程、視圖、觸發(fā)器進行解密(推薦)
  • SQL Server 使用觸發(fā)器(trigger)發(fā)送電子郵件步驟詳解
  • SQL Server實現(xiàn)用觸發(fā)器捕獲DML操作的會話信息【實例】
  • SQL Server:觸發(fā)器實例詳解
  • SqlServer觸發(fā)器詳解
  • SQL SERVER中各類觸發(fā)器的完整語法及參數(shù)說明
  • SQL SERVER 觸發(fā)器介紹
  • SQL Server誤區(qū)30日談 第4天 DDL觸發(fā)器就是INSTEAD OF觸發(fā)器
  • SQL Server 觸發(fā)器詳情

標簽:湘潭 湖南 銅川 崇左 黃山 衡水 蘭州 仙桃

巨人網(wǎng)絡(luò)通訊聲明:本文標題《SqlServer實現(xiàn)類似Oracle的before觸發(fā)器示例》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266