MySQL检查和清理不可见字符的实现步骤

 更新时间:2026年02月12日 09:58:30   作者:小恒恒  
在导入Excel表格到MySQL时,由于未进行数据清理,导致字段a出现了大量不可见字符的问题,这些字符包括空格、制表符、换行符和BOM头,下面就来介绍一下如何清理这些字符,感兴趣的可以了解一下

故事背景

今天四大运营商其中一个交给我们一个 Excel 表格,我们没有做任何数据清理就导入 MySQL 了,导致 a 字段出现了大量不可见字符。

检查

检查时,我们要知道不可见字符都有哪些。通常是空格、制表符、换行符、BOM头。这里我们主要清理BOM头,也就是 UTF-8 BOM 头:

SELECT 
  a AS 原始数据,
  -- 核心处理逻辑:先删BOM头→清空白
  TRIM(REPLACE(a, CHAR(0xEF, 0xBB, 0xBF), '')) AS 清理后,
  LENGTH(a) AS 原始字节长度,
  CHAR_LENGTH(a) AS 原始字符长度,
  -- 验证清理后的长度
  LENGTH(TRIM(REPLACE(a, CHAR(0xEF, 0xBB, 0xBF), ''))) AS 清理后字节长度,
  CHAR_LENGTH(TRIM(REPLACE(a, CHAR(0xEF, 0xBB, 0xBF), ''))) AS 清理后字符长度
FROM yys_data
WHERE LENGTH(a) != CHAR_LENGTH(a);

清理

所以,对应清理时,也就非常简单:

UPDATE
yys_data
SET
a = TRIM(REPLACE(a, CHAR(0xEF, 0xBB, 0xBF), ''))
WHERE
LENGTH(a) != CHAR_LENGTH(a);

到此这篇关于MySQL检查和清理不可见字符的实现步骤的文章就介绍到这了,更多相关MySQL检查和清理不可见字符内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • MySQL数据库表约束讲解

    MySQL数据库表约束讲解

    这篇文章主要介绍了MySQL数据库表约束讲解,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-06-06
  • MySQL修改配置 区分大小写

    MySQL修改配置 区分大小写

    修改MySql Server安装目录下的 my.ini 文件,在mysqld节下加入下面一行 set-variable=lower_case_table_names=0 (0:大小写敏感;1:大小写不敏感)最后重启一下MySql服务即可。
    2010-12-12
  • 透彻理解Mysql连接的原理

    透彻理解Mysql连接的原理

    这篇文章主要为大家介绍了Mysql连接原理的深入理解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-07-07
  • Mysql数据库常用命令操作大全

    Mysql数据库常用命令操作大全

    这篇文章主要介绍了Mysql常用命令操作方法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-03-03
  • 为mysql数据库添加添加事务处理的方法

    为mysql数据库添加添加事务处理的方法

    开始首先说明一下,mysql数据库默认的数据库引擎是MyISAM,是不支持事务的,单数如果你添加了数据执行语句是不会出错的,单数不管用,即便是回滚事务,记录也是插入进去了,所有首先我们要做的第一步是更改数据库引擎
    2011-07-07
  • MySQL绿色版设置编码以及1067错误详解

    MySQL绿色版设置编码以及1067错误详解

    这篇文章主要介绍了MySQL绿色版设置编码,以及1067错误的相关资料,需要的朋友可以参考下
    2017-05-05
  • Centos下Mysql安装图文教程

    Centos下Mysql安装图文教程

    这篇文章主要为大家详细介绍了 Centos下Mysql安装图文教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-10-10
  • MySQL GTID全面总结

    MySQL GTID全面总结

    这篇文章主要介绍了MySQL GTID的相关资料,帮助大家更好的理解和学习使用MySQL数据库,感兴趣的朋友可以了解下
    2021-03-03
  • 5分钟了解MySQL5.7中union all用法的黑科技

    5分钟了解MySQL5.7中union all用法的黑科技

    本文带领大家通过5分钟了解MySQL5.7中union all用法的黑科技,需要的朋友可以参考下
    2017-04-04
  • MySQL使用Sequence创建唯一主键的实现示例

    MySQL使用Sequence创建唯一主键的实现示例

    Sequence提供了更多的灵活性,本文主要介绍了MySQL使用Sequence创建唯一主键的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-05-05

最新评论