服务器之家:专注于服务器技术及软件下载分享
分类导航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|数据库技术|

服务器之家 - 数据库 - Sql Server - MsSQL数据导入到Mongo的默认编码问题(正确导入Mongo的方法)

MsSQL数据导入到Mongo的默认编码问题(正确导入Mongo的方法)

2020-03-01 13:49MSSQL教程网 Sql Server

今天进行了一个实验来验证数据导入到mongo的效率问题,但是期间出现了默认编码问题,下面看一下正确的方法

先说下我操作的步骤。
1.从sql2008的management studio查询5万条数据,使用右键导出为csv
2.由于默认导出没有带列名,手工编辑后增加了列名
3.使用mongoimport导入数据,错误,提示invalid utf8 character


检查了一下,是因为默认导出为csv的时候,不是utf8的格式而是系统的默认编码,采用openoffice编辑另存为utf8格式就可以解决编码问题,但是发现使用openoffice后列名和数据不匹配,列名很多都叠在一起了,虽然数据是能导入进去了,但是根本不能用。

换了一种做法,不使用导出csv,直接copy数据到excel然后另存为csv,一切正常,这里就发生了一个很奇怪的问题,这里使用的编码还是默认的系统编码,为什么不提示错误呢?

由于手工转换成csv在数据量小得时候可以,但是数据量大的时候编辑比较慢,就在mangement studio中配置了一下。
选项-查询结果-sql server-以网格显示结果,选中“在复制或保存结果时包含列标题”
这样在使用导出为csv的时候,默认就是带着列名的。

 

复制代码 代码如下:

mongoimport -d local -c testtable  --type csv --headerline --file c:\inmongo.csv

 

直接就可以了。

 

但是这个编码的问题很奇怪,不知道有人深入了解过没有。

延伸 · 阅读

精彩推荐