【问题标题】:Encoding problems with SQL LOAD DATA INFILE? Or differentSQL LOAD DATA INFILE 的编码问题?或者不同
【发布时间】:2017-03-08 11:23:03
【问题描述】:

我有一个简单的查询

LOAD DATA LOCAL INFILE '$file'
INTO TABLE `test` 
FIELDS TERMINATED BY ';'
IGNORE 1 LINES
(Province, Locality, Latitude, Longitude)

问题是,我有两个 .txt 文件,每个文件的内容几乎相同,但来源不同,所以使用 file1 一切正常,但使用 file2 我有问题。首先输出就像

�K�a�m�p�t�

数据库结构:

id int NOT NULL AUTO_INCREMENT,
Province varchar(255),
Locality varchar(255),
Latitude varchar(12),
Longitude varchar(12),
PRIMARY KEY (id)

我的文件: file1 file2

是编码问题吗?

【问题讨论】:

  • 哪个 dbms,哪个平台?
  • Apache、MySQL 5.5.42 通过 MAMP

标签: php mysql sql encoding mamp


【解决方案1】:

应该是Kampot??

请提供源文件的十六进制。闻起来像你有 UTF-16,而不是 UTF-8。也许它来自某些 Microsoft 产品?

所以,这可能是解决方案:

LOAD DATA ... CHARACTER SET ucs2 ...

【讨论】:

  • 它是 UTF-16 LE 和一个二进制文件,我通过 less 打开文件发现了。我会试试你的解决方案,谢谢! :)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-09-05
  • 1970-01-01
  • 2014-01-31
  • 1970-01-01
  • 2013-09-24
  • 2011-10-24
相关资源
最近更新 更多