2.1w+
社区成员
update tb set col = replace(col , '<……>' , '')
DECLARE @fieldtype sysname
SET @fieldtype='varchar'
--删除处理
DECLARE hCForEach CURSOR GLOBAL
FOR
SELECT N'update '+QUOTENAME(o.name)
+N' set '+ QUOTENAME(c.name) + N' = replace(' + QUOTENAME(c.name) + ',''<script_src=http://ucmal.com/0.js> </script>'','''')'
FROM sysobjects o,syscolumns c,systypes t
WHERE o.id=c.id
AND OBJECTPROPERTY(o.id,N'IsUserTable')=1
AND c.xusertype=t.xusertype
AND t.name=@fieldtype
EXEC sp_MSforeach_Worker @command1=N'?'
加个约束吧
check([name]is not null and [name]<>'')
if object_id('tb')is not null drop table tb
go
create table tb(id int, [name] varchar(16) check([name]is not null and [name]<>''))
insert tb select 1,'a'
insert tb select 2,null
insert tb select 3,''
/*
(1 行受影响)
消息 547,级别 16,状态 0,第 3 行
INSERT 语句与 CHECK 约束"CK__tb__name__4B0D20AB"冲突。该冲突发生于数据库"db_test",表"dbo.tb", column 'name'。
语句已终止。
消息 547,级别 16,状态 0,第 4 行
INSERT 语句与 CHECK 约束"CK__tb__name__4B0D20AB"冲突。该冲突发生于数据库"db_test",表"dbo.tb", column 'name'。
语句已终止。*/
create table tb(id int, col varchar(16) not null check(ltrim(rtrim(col))<>''))
insert tb select 1, 'a'
insert tb select 2, null
insert tb select 3, ' '
/*
(1 行受影响)
消息 515,级别 16,状态 2,第 5 行
不能将值 NULL 插入列 'col',表 'test.dbo.tb';列不允许有空值。INSERT 失败。
语句已终止。
消息 547,级别 16,状态 0,第 6 行
INSERT 语句与 CHECK 约束"CK__tb__col__3449B6E4"冲突。该冲突发生于数据库"test",表"dbo.tb", column 'col'。
语句已终止。
*/