2013-04-09 69 views
0

正确导出我使用下面的命令导出联系人集合的场F1和F2以contacts.csv用逗号分隔符记录不是在蒙戈DB

mongoexport --db users --collection contacts --csv --out /opt/backups/contacts.csv --fields f1,f2 

它的做工精细和数据导出为CSV。

问题是只有f2字段的记录导出。

f2字段存储在数据库中,逗号分隔值为1,samuel,它。

我认为mongo是出口到csv,考虑逗号作为分隔符。

所以,1,萨穆埃尔和其ANE导出到3个不同的细胞中,如下所示csv文件,

field1 field2 
==== ====   ======  == 
1   1     samuel it 

instead i want it as follows 

field1 field2 
==== ====   
1   1,samuel,it 

BTW我目前使用的蒙戈1.6.5

+0

如果我是你,我会考虑先将我的mongo升级到2.4,然后看看这个问题是否仍然存在。 – 2013-04-09 07:44:38

+0

您使用什么应用程序或工具导入CSV? – Stennie 2013-04-09 14:22:52

回答

0

的MongoDB 1.6.5发布于2010年12月和批次已经改变。如果不是2.4,那至少应该升级到MongoDB 2.2。

如果不能完全升级MongoDB,您可以尝试在MongoDB 2.4中针对当前数据库运行mongoexport。命令行工具通常应该向后兼容。

它看起来像mongoexport CSV格式,使其与MongoDB的2.0版本更柔顺和SERVER-1097变化(“mongoimport /出口应坚持CSV规范”),但肯定会是以后的改进或修正。

我只是想一个简单的测试与MongoDB的1.6.5和mongoexport --csv格式看起来OK:

field1,field2 
1,"1,samuel,it" 

另一种可能性是,问题在于应用/工具,你要使用导入CSV。对于什么是“有效的”CSV formatted file看起来有几种不同的解释。每个人都同意CSV包含用逗号分隔的字段,但字段转义可能会有所不同。