mongoimport -d importtest --collection documents --type csv --file documents.csv --headerline
mongoimport is a pretty handy tool for importing your existing records stored in CSV or JSON format, however, it does have it's limitations. Often the datatypes inferred by mongoimport may not always be correct and usually results in assigning a field as a datatype of String.
For example,
If I have a date with the following format
2012-07-14T01:00:00+01:00
mongoimport will assign a field value of '2012-07-14T-01:00:00+01:00' as the literal string.To fix this, we use the mongo client command as follows:
db.documents.find({}).forEach( function (d) { d.dateCreated = new ISODate(d.dateCreated); db.documents.save(d); });
Here I convert the string to an ISODate.
This same technique can be applied to other datatypes such as Integer, Boolean etc...
No comments:
Post a Comment