我目前正在创建一个mysql数据库。当我从包含公司记录的.csv文件导入数据时,大约一半的数据被正常导入而另一半被更改为相同的中文字符。起初我以为是Heidisql工具但是在mysql中手动加载后我仍然在数据中有中文字符。以下是加载语句的示例(如果它没有格式化,则很抱歉):
LOAD DATA LOCAL INFILE 'c:/text.csv'
INTO TABLE test
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
在上面的路径中,这不是它与它相似的实际路径。路径是正确的,因为执行时没有给出错误。
导入数据后,我使用SELECT和UNION ALL来显示我的数据(使用另一个表,因为这是该项目的主要目标之一)。以下是该代码段:
SELECT PartNum, Description, Quantity, Price, '','' FROM Test1
UNION ALL
SELECT * FROM Test2
两个单引号区域是因为Test1表的列数少于Test2表的列数。我收到一个错误,因为Test1表有较少的列,我读到这是一个解决方法。现在问题。看到中文字后,我的第一直觉就是尝试手动加载(与Heidisql相反)。在此之后没有帮助,我的第一个想法是检查.csv文件。但是,我检查了桌子,发现它是按字母顺序排列的。我的.csv文件没有这样安排。我没有起点或终点来检查.csv文件。作为一个mysql菜鸟,我觉得如果有人知道有什么东西可以帮助我把这些行恢复到英语会更快。汉字的例子如下:䍏䱌䕃呏㩍䌱㔲㌰㐱㠺䵃㈱㌭㈭㌰㐱啎啎䙌䙌䵉䕌䱁䱁何䱁<<<<<<<<<等等。
答案 0 :(得分:0)
有同样的问题。使用mysqlimport
代替我解决了这个问题。