去掉SqlServer中字段包含的回车、换行、回车换行符

-- 制表符 CHAR(9)
-- 换行符 CHAR(10)
-- 回车 CHAR(13)

注意:特殊字符在Sql Server Management Studio查询中显示为空格,但实际不是空格。在C#中能清晰的看到类似:\r\n的字符.

SQL中可以使用Replace函数来对某个字段里的某些字符进行替换操作,语法如下: 
语法 
REPLACE ( original-string, search-string, replace-string ) 
参数 
如果有某个参数为 NULL,此函数返回 NULL。 
original-string     被搜索的字符串。可为任意长度。 
search-string     要搜索并被 replace-string 替换的字符串。该字符串的长度不应超过 255 个字节。如果 search-string 是空字符串,则按原样返回原始字符串。 
replace-string     该字符串用于替换 search-string。可为任意长度。如果 replacement-string 是空字符串,则删除出现的所有 search-string。 
例子: 
UPDATE tableName SET recordName=REPLACE(recordName,'abc','ddd') 
将表tableName中的recordName字段中的 abc 替换为 ddd 
这个函数有一点不足是不支持 text,ntext类型字段的替换,可以通过下面的语句来实现: 
update tableName set recordName=replace(cast(recordName as varchar(8000)) ,'abc','ddd')

2、替换字段中的换行符,回车符

1: 回车符

SELECT *, REPLACE(detail, CHAR(13) , '<br>') AS 显示替换后的内容 FROM loginfo

2:换行符

SELECT *, REPLACE(detail, CHAR(10), '<br>') AS 显示替换后的内容 FROM loginfo

3:回车换行符

推荐使用这个:REPLACE(REPLACE(字段, CHAR(10), ''), CHAR(13), '')

SELECT *, REPLACE(detail, CHAR(13) + CHAR(10), '<br>') AS 显示替换后的内容 FROM loginfo

4:将回车换行符替换成<BR><BR>

UPDATE loginfo 
SET detail = REPLACE(detail, CHAR(13) + CHAR(10), '<br><br>')

注 在 dos \win 系列会出现 回车+换行符 CHAR(13)+CHAR(10)

在 unix \ linux 是换行符

转换只要把回车符char(13) 去掉就行了

以下sql语句

UPDATE loginfo SET detail = REPLACE(detail, CHAR(13) , '')

替换 正则 内容

update User_Content set [Address]=substring([Address],1,patindex('%<%',[Address])-2)
where patindex('%<%',[Address])>2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值