You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MySQL导入CSV数据时文本被截断显示省略号问题

MySQL导入CSV句子被截断问题的解决办法
  • 字符集不匹配导致截断:你导入时指定的字符集是UTF8,但字段用的是utf8mb4_unicode_ci排序规则,MySQL的UTF8实际是utf8mb3,仅支持3字节Unicode字符,和utf8mb4不兼容,遇到4字节字符就会截断内容。把LOAD DATA里的CHARACTER SET UTF8改成CHARACTER SET utf8mb4即可。

  • 转义符与包围符冲突:你同时用双引号做字段包围符和转义符(OPTIONALLY ENCLOSED BY '"'和ESCAPED BY '"'),这会让CSV里的双引号被错误解析,提前截断句子。建议把转义符改成反斜杠,也就是ESCAPED BY '\\',或者确认CSV的转义规则和当前设置一致。

  • 仅客户端显示截断,实际数据完整:很多MySQL客户端(比如phpMyAdmin、Navicat)会自动把长文本显示成省略号,但实际数据并未丢失。可以用这条SQL查询字段长度:SELECT LENGTH(你的句子字段名) FROM sentences WHERE id=11026408;,对比原句子的字符数,要是长度匹配,调整客户端的显示设置就行。

  • CSV包含隐藏控制字符:检查原CSV文件,看看句子里有没有制表符、换行符这类不可见字符,这些会被当成字段分隔符(COLUMNS TERMINATED BY ' '),导致内容提前截断。用Notepad++这类编辑器开启“显示所有字符”功能就能排查。

修正后的LOAD DATA语句示例:

LOAD DATA LOCAL INFILE "sentences.csv" 
INTO TABLE sentences 
CHARACTER SET utf8mb4 
COLUMNS TERMINATED BY '	' 
OPTIONALLY ENCLOSED BY '"' 
ESCAPED BY '\\';

内容的提问来源于stack exchange,提问作者Michał Ziobro

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 09:25:23