美图欣赏 | 设为首页 | 加入收藏 | 网站地图

当前位置:电脑中国 > 数据库 > oracel >

SQL列中含有换行符的查找和替换方法

2017-12-25 20:36|来源:未知 |作者:dnzg |点击:

最近在获取数据时,发现程序读取的字段中含有\r\n字符,检查数据库表中的数据,发现是varchar字符串中包含了换行符。导入数据导致了这一情况出现。

回车换行

不同系统的行结尾符号并不同,如下:

  • linux/unix下的行结尾符号是\n
  • windows中的行结尾符号是\r\n
  • Mac系统下的行结尾符号是\r

查找换行符

1
2
3
4
select * from table where
collum like '%'+CHAR(10) + '%'    --linux下的换行符
or collum like '%'+CHAR(13)+CHAR(10) + '%'  --windows下的换行符
or collum like '%'+CHAR(13)+ '%'  -- mac下的换行符

替换换行符

1
2
3
4
--windows下的替换操作
update table
set column= REPLACE(column, CHAR(13) + CHAR(10), '')
where collum like '%'+CHAR(13)+CHAR(10) + '%'

  

(责任编辑:dnzg)