--會(huì)員表 if object_id('userinfo','u') is not null drop table userinfo go create table userinfo(userid int primary key,user_tegral int,level int) insert into userinfo select 1,0,0 go --會(huì)員等級(jí)表 if object_id('userlevel','u') is not null drop table userlevel go
--插入測(cè)試數(shù)據(jù) create table userlevel(level int primary key,mlevel_point decimal(10,2)) insert into userlevel select 0,0 insert into userlevel select 1,100 insert into userlevel select 2,200 insert into userlevel select 3,300 go
--觸發(fā)器 create trigger TR_userInfor on userinfo for update as begin
update a set a.level=b.level from userinfo a,userlevel b where a.userid in(Select userid from inserted) and a.user_tegral>=b.mlevel_point and a.user_tegral<(Select min(mlevel_point) from userlevel where mlevel_point>b.mlevel_point) end
--測(cè)試 update userinfo set user_tegral=100 where userid=1
select * from userinfo
--另外一個(gè)觸發(fā)器 set ANSI_NULLS ON set QUOTED_IDENTIFIER ON go ALTER TRIGGER [AlterName] ON [dbo].[FS_User] FOR INSERT AS BEGIN SET NOCOUNT ON; UPDATE dbo.FS_User SET uname=(SELECT uname FROM Inserted)+'@ml' WHERE id IN (SELECT id FROM inserted) END