手机
当前位置:查字典教程网 >编程开发 >mssql数据库 >sql ntext数据类型字符替换实现代码
sql ntext数据类型字符替换实现代码
摘要:复制代码代码如下:---ntext数据类型字符替换createtablett(sidINTIDENTITY(1,1),contntext)g...

复制代码 代码如下:

---ntext数据类型字符替换

create table tt

(

sid INT IDENTITY(1,1),

cont ntext

)

go

insert into tt(cont) values(N'fd sad fdsa 涂聚文工团 缔友计算机信息技术有限公司 可能性 桔柑 ')

go

update tt set cont='fd sad fdsa 涂聚文工团 可能性 缔友计算机信息技术有限公司 桔柑 ' where sid=1

--去空格

EXEC sp_dboption 'pubs', 'select into/bulkcopy', 'true'

--sp_dboption 'pubs', 'select into/bulkcopy', 'true'

GO

DECLARE @ptrval binary(16),@i int,@k int,@f int

select @i=datalength(cont) from tt where sid=1

set @k=1

while @i>1

begin

select @f=CHARINDEX(SPACE(1),cont) from tt where sid=1 ---SPACE(1)

set @f=@f-1

SELECT @ptrval = TEXTPTR(cont) FROM tt WHERE sid=1

if @f>0

UPDATETEXT tt.cont @ptrval @f 1 null

if @k=@i

break

else

set @k=@k+1

continue

end

GO

--sp_dboption 'pubs', 'select into/bulkcopy', 'false'

EXEC sp_dboption 'pubs', 'select into/bulkcopy', 'false'

GO

SELECT * FROM tt

---换英文字母

EXEC sp_dboption 'pubs', 'select into/bulkcopy', 'true'

GO

DECLARE @ptrval binary(16),@i int,@k int,@f int

select @i=datalength(cont) from tt where sid=1

set @k=1

while @i>1

begin

select @f=CHARINDEX('sad',cont) from tt where sid=1 ---SPACE(1)

set @f=@f-1

SELECT @ptrval = TEXTPTR(cont) FROM tt WHERE sid=1

if @f>0

UPDATETEXT tt.cont @ptrval @f 3 'ggg'

if @k=@i

break

else

set @k=@k+1

continue

end

GO

SELECT * FROM tt

---中文字母

EXEC sp_dboption 'pubs', 'select into/bulkcopy', 'true'

GO

DECLARE @ptrval binary(16),@i int,@k int,@f int

select @i=datalength(cont) from tt where sid=1

set @k=1

while @i>1

begin

select @f=CHARINDEX('涂聚文',cont) from tt where sid=1 ---SPACE(1)

set @f=@f-1

SELECT @ptrval = TEXTPTR(cont) FROM tt WHERE sid=1

if @f>0

UPDATETEXT tt.cont @ptrval @f 6 '涂斯博'

if @k=@i

break

else

set @k=@k+1

continue

end

GO

SELECT * FROM tt

EXEC sp_dboption 'pubs', 'select into/bulkcopy', 'true'

GO

DECLARE @ptrval binary(16),@i int,@k int,@f int,@change nvarchar(20),@newstr nvarchar(20),@len int

set @change=N'sad' --要替换的字符

--set @len=datalength(@change)

set @len=len(@change)

set @newstr=N'ggg' --替换成的字符

select @i=datalength(cont) from tt where sid=1

set @k=1

while @i>1

begin

select @f=CHARINDEX(@change,cont) from tt where sid=1 ---SPACE(1)

set @f=@f-1

SELECT @ptrval = TEXTPTR(cont) FROM tt WHERE sid=1

if @f>0

UPDATETEXT tt.cont @ptrval @f @len @newstr

if @k=@i

break

else

set @k=@k+1

continue

end

GO

SELECT * FROM tt

EXEC sp_dboption 'pubs', 'select into/bulkcopy', 'true'

GO

DECLARE @ptrval binary(16),@i int,@k int,@f int,@change nvarchar(20),@newstr nvarchar(20),@len int

set @change=N'涂聚文' --要替换的字符

--set @len=datalength(@change) --用此会出错

set @len=len(@change)

set @newstr=N'涂斯博' --替换成的字符

select @i=datalength(cont) from tt where sid=1

set @k=1

while @i>1

begin

select @f=CHARINDEX(@change,cont) from tt where sid=1 ---SPACE(1)

set @f=@f-1

SELECT @ptrval = TEXTPTR(cont) FROM tt WHERE sid=1

if @f>0

UPDATETEXT tt.cont @ptrval @f @len @newstr

if @k=@i

break

else

set @k=@k+1

continue

end

GO

SELECT * FROM tt

update tt set cont='fd sad fdsa 涂聚文工团 可能性 缔友计算机信息技术有限公司 桔柑 ' where sid=1

select datalength('涂聚文')

select len('涂聚文')

select datalength('sad')

select len('sad')

select len(SPACE(1))

EXEC sp_dboption 'pubs', 'select into/bulkcopy', 'true'

DECLARE @ptrval binary(16),@i int,@k int,@f int,@change nvarchar(20),@newstr nvarchar(20),@len int

set @change=N'涂聚文' --要替换的字符

--set @len=datalength(@change) --用此会出错

set @len=len(@change)

set @newstr=N'涂斯博' --替换成的字符

select @i=datalength(cont) from tt where sid=1

set @k=1

while @i>1

begin

select @f=CHARINDEX(@change,cont) from tt where sid=1 ---SPACE(1)

set @f=@f-1

SELECT @ptrval = TEXTPTR(cont) FROM tt WHERE sid=1

if @f>0

UPDATETEXT tt.cont @ptrval @f @len @newstr

if @k=@i

break

else

set @k=@k+1

continue

end

GO

EXEC sp_dboption 'pubs', 'select into/bulkcopy', 'true'

DECLARE @ptrval binary(16),@i int,@k int,@f int,@change nvarchar(20),@newstr nvarchar(20),@len int

set @change=N'涂聚文' --要替换的字符

--set @len=datalength(@change) --用此会出错

set @len=len(@change)

set @newstr=N'涂斯博' --替换成的字符

select @i=datalength(cont) from tt where sid=1

set @k=1

while @i>1

begin

select @f=CHARINDEX(@change,cont) from tt where sid=1 ---SPACE(1)

set @f=@f-1

SELECT @ptrval = TEXTPTR(cont) FROM tt WHERE sid=1

if @f>0

UPDATETEXT tt.cont @ptrval @f @len @newstr

if @k=@i

break

else

set @k=@k+1

continue

end

GO

【sql ntext数据类型字符替换实现代码】相关文章:

Access 数据类型与 MS SQL 数据类型的相应

SQL 截取字符串应用代码

SQL2005中char nchar varchar nvarchar数据类型的区别和使用环境讲解

SQL数据库开发中的一些经典代码

sql2008 还原数据库解决方案

sqlserver 复制表 复制数据库存储过程的方法

SQLServer 2005数据库连接字符串 连接sql2005必备资料

SQL Server 数据库清除日志的方法

SQL Server 大量数据的分页存储过程代码

SQL Server 数据库安全管理介绍

精品推荐
分类导航