就是在插入数据的时候,对某一字段进行验证,如果发现有非法字符用设定好的字符替换 比如插入的字符是:"美女我爱你" 就用女生把美女替换。 并且在整个插入的字段开头和末尾各加一段文字 文字为固定的 想到是用触发器 求个实例吧
如表A
id name des
1 张三 美女我爱你
2 李四 我爱美女
插入后
id name des
1 张三 可爱的 女生我爱你 嫁给我吧
2 李四 可爱的 我爱美女 嫁给我吧
如表A
id name des
1 张三 美女我爱你
2 李四 我爱美女
插入后
id name des
1 张三 可爱的 女生我爱你 嫁给我吧
2 李四 可爱的 我爱美女 嫁给我吧
des='可爱的'+replace(des,'女生','美女')+'嫁给我吧'
from #tb
只提供思路
create trigger trigger_addwz on A for insert
as
begin
select des='可爱的'+replace(des,'女生','美女')+'嫁给我吧' from A
end
消息 8116,级别 16,状态 1,过程 trigger_addwz,第 4 行
参数数据类型 text 对于 replace 函数的参数 1 无效。
(
id int,
name nvarchar(25),
des nvarchar(100)
)
create trigger tri_tb on tb
instead of insert
as
begin
declare @keyword nvarchar(10),@reword nvarchar(10)
set @keyword='美女'
set @reword='女生'
select * into #t from INSERTED
UPDATE A
SET A.des='可爱的'+replace(des,@keyword,@reword)+'嫁给我吧'
FROM #t A
WHERE CHARINDEX(@keyword,A.des)>0
insert into tb
select * from #t
endinsert into tb
select 1,'张三','美女我爱你' union all
select 2,'李四','我爱美女'
select * from tb-------------
id name des
1 张三 可爱的女生我爱你嫁给我吧
2 李四 可爱的我爱女生嫁给我吧
Update A Set des='可爱的'+replace(des,'女生','美女')+'嫁给我吧' 触发器里用查询语句什么意思!