if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[student]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[student]
GO
CREATE TABLE [dbo].[student] (
[sid] [int] NULL ,
[sname] [varchar] (500) COLLATE Chinese_PRC_CI_AS NULL
) ON [PRIMARY]
GO
--如果插入记录,或是更新学生姓名的时候,都要把学生姓名里含有空格&npbs的都替换掉
create Trigger truStudenton student
after insert,update
as
if update(sname)
begin
declare @name varchar(2000),@sid int
select @name =replace(sname,'&npbs',''),@sid=sid from inserted;
update student set sname=@name From student s Where s.sid=@sid
end
go
--insert into student values('13','aaaaa&npbssssssssss&npbs好的')
--update student set sid=1 where sid=3
--select * from student
--select replace('媸好好好好好&npbs叟姹紫嫣红眼&npbs好的','&npbs','')
本文介绍了一个SQL触发器的实现案例,用于在更新或插入学生表时自动清理姓名字段中的特定字符。此外,还展示了如何创建一个基本的学生信息表。
217

被折叠的 条评论
为什么被折叠?



