Lec*_*ico 3 date mongodb isodate mongoimport
当我从mongoDB导出数据时,我获取以下文件:
除了ISODate的日期之外,mongoDB中的所有内容都是字符串.
123@123.com,sha1:64000:18:BTJnM903gIt5FNlSsZIRx1tLC9ErPJuB:9YVs800sgRPr1aaLj73qqnJ6,123,123,123@123.com,2017-04-28T09:20:07.480Z,cus_AYcVXIUf68nT52
Run Code Online (Sandbox Code Playgroud)
如果我将此文件导入MongoDB,它会将每个值导入为String值.我需要将日期解析为Date格式,其余的可以是字符串.
我已经看到MongoImport --columnsHaveTypes有一个参数.我试过没有任何结果:
mongoimport -u test-p test --authenticationDatabase test -h localhost:30158 --db test--collection users --type csv --file users.csv --upsert --upsertFields username --fields username.string\(\),password.string\(\),cname.string\(\),sname.string\(\),mail.string\(\),creation.date\(\),validation.auto\(\),clients.string\(\),customer.string\(\) --columnsHaveTypes
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
Failed: type coercion failure in document #0 for column 'creation', could not parse token '2017-04-28T09:20:07.480Z' to type date
Run Code Online (Sandbox Code Playgroud)
我能做什么?
亲切的问候.
摘要:您需要提供日期的显示格式.
从columnsHaveTypes参数的mongoimport文档中,您不能只说created.date\(\)- 您需要提供一个参数,该参数是日期在CSV中表示方式的模板.显然,按照Go语言time.Parse函数的方式,通过以您选择的格式呈现特定的引用日期.
我认为参考日期应格式如下:
2006-01-02T15:04:05.000Z
Run Code Online (Sandbox Code Playgroud)
因此,您需要更改mongoimport调用以使用格式模板指定日期,如下所示:
creation.date\(2006-01-02T15:04:05.000Z\)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3979 次 |
| 最近记录: |