范围:
我有一个MongoDB的集合,我想导出到.csv文件。我已经用类似的数据库完成了这个,使用MongoExport.exe,在服务器上执行它(windows机器,托管MongoDB数据库)。
问题:
运行以下脚本后
mongoexport.exe --fieldFile fields.txt --db AppleStore --collection AppleStoreApps --out applestore.csv --csv --port 21766
我开始收到以下错误消息
Invalid BSON object type for CSV output:10
它适用于某些情况,但似乎大多数记录都会出现此错误。
更多信息:
这是mongoDB上的JSON对象的一个示例,应该导出:
{
"_id" : ObjectId("545c05ea74671a1d1c572da9"),
"url" : "https://itunes.apple.com/us/app/dc-eventos/id782560424?mt=8",
"name" : "DC Eventos",
"developerName" : "FERNANDO COSTA",
"developerUrl" : "https://itunes.apple.com/us/artist/fernando-costa/id729986271",
"price" : 0,
"isFree" : true,
"thumbnailUrl" : "http://a4.mzstatic.com/us/r30/Purple6/v4/ee/a2/5e/eea25e3f-8f12-9dce-c86f-37e5e3d9a8dc/icon350x350.jpeg",
"compatibility" : "Requires iOS 5.0 or later. Compatible with iPhone, iPad, and iPod touch. This app is optimized for iPhone 5.",
"category" : "Business",
"updateDate" : ISODate("2014-03-22T03:00:00.000Z"),
"version" : "1.82.82.542",
"size" : "16.3 MB",
"languages" : [
"English"
],
"minimumAge" : 4,
"ageRatingReasons" : [],
"rating" : {
"starsRatingCurrentVersion" : 0,
"starsVersionAllVersions" : 0,
"ratingsCurrentVersion" : 0,
"ratingsAllVersions" : 0
},
"topInAppPurchases" : null
}
答案 0 :(得分:1)
mongoexport可能会对空数组"ageRatingReasons" : []
- 和null
对象造成阻塞。逐个检查记录并检查模式。
csv不能做'数组和对象因此需要json和xml。尝试导出json,然后使用各种json转换为csv转换器,这些转换器将处理复杂或自定义展平对象,例如[]
到0
或跳过逗号val,,val
,无论需要什么。 jsontocsv转换器还必须允许关闭验证,因为ObjectId(" 545c05ea74671a1d1c572da9")是无效的json。