背景
某些情况下,我们的数据库里面可能会保存有特殊字符,最好的方式是在保存之前处理一下,不然后面的业务使用到的时候可能会有各种奇奇怪怪的问题。
但,不可避免的,总有漏网之鱼,我们需要检查一下库里面现有的数据中是否包含后面业务处理不了的特殊字符,比如:换行符、Tab符等。
那么,怎么查呢?
查询方式
我们能想到的,一定是直接 like
查一下就行了,但是怎么写这段 SQL 是个问题,直接写:
SELECT
*
FROM
TA
WHERE
TName LIKE '%\n%'
这样是不行的。
我们需要把 \n
转换一下,写成 CHAR(10)
,这样:
SELECT
*
FROM
TA
WHERE
TName LIKE '%' + CHAR ( 10 ) + '%'
这样就能查出来所有 TName
包含 \n
的数据了。
同理 \r
是 CHAR(13)
,\t
是 CHAR(9)
,大家根据需要灵活选择一下就可以了。
以上。
祝大家变的更强。