觸發器範例程式碼,根據即時資料,當監測資料大於設定警告值時,將該資料插入異常資料表中
USE [Mointor]GO/****** Object: Trigger [dbo].[realtimedata_trg] Script Date: 08/15/2013 13:20:55 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGO ALTER trigger [dbo].[realtimedata_trg] on [dbo].[t_pn_realtimedata] after insert as /**資料異常 新插入的值大於裝置表t_pn_device配置的最大值**/ if (select max_value from t_pn_device where device_code =(select device_id from inserted))<=(select monitor_value from inserted) begin declare @num int --監測值 select @num=monitor_value from inserted; declare @device_id varchar(20) --監測裝置編號 select @device_id=device_id from inserted; insert into t_oa_data_exception (id,alarm_value,device_code,exception_code,exception_style,exception_time,normal_value,pipe_code,status) values(newid(),@num,@device_id,'100','超出正常範圍',CONVERT(varchar(100), GETDATE(), 20),'','','0'); print 'exception info have been inserted into t_oa_data_exception'; end
dml@2013.8.15