我正在尝试从json文件将文档导入到mongodb集合中。 json的格式如下:
{"key1-1": "val1-1", "key2-1": "val2-1"}
{"key1-2": "val1-2", "key2-2": "val2-2"}
{"key1-3": "val1-3", "key2-3": "val2-3"}
我尝试使用mongoimport命令:
mongoimport --db "test" --collection "inventory" --type json --file "test_files/meta_Video_Games.json" --jsonArray
但是我得到了这个错误:
[js] SyntaxError: missing ; before statement @(shell):1:14
之所以得到它,是因为我应该传递一个json数组而不是一个多行json对象文件。
是否可以通过mongo shell直接导入?
答案 0 :(得分:0)
mongoimport命令上的--jsonArray
选项与mongoexport命令上的--jsonArray
相反。
如果将您的示例数据插入集合中,然后使用mongoexport --jsonArray
,则会得到以下输出。
12:12 $ mongoexport --jsonArray --db=jsonarray --collection=array
2019-11-06T12:13:09.155+0000 connected to: localhost
[{"_id":{"$oid":"5dc2b84e785cad8404bd93d8"},"key1-1":"val1-1","key2-1":"val2-1"},{"_id":{"$oid":"5dc2b864785cad8404bd93d9"},"key1-2":"val1-2","key2-2":"val2-2"},{"_id":{"$oid":"5dc2b877785cad8404bd93da"},"key1-3":"val1-3","key2-3":"val2-3"}]
要进行处理,您的输入将需要在每个文档后加一个开合方括号和一个逗号。