MongoDB的导入和导出为CSV
当试图导入或命令行(MongoDB的)出口:对于防爆:MongoDB的导入和导出为CSV
> mongoimport --db denistest --collection things --type csv --file C:/Users/Administrator/Desktop/csv_data.csv
我得到“JavaScript执行失败:语法错误:意外的标识”的错误?
这里有什么问题?
我终于找到了问题。我在mongo.exe中执行我的命令。 (我打开C:\ mongodb \ bin> mongo并执行我的命令)
C:\mongodb\bin>mongo
MongoDB shell version: 2.4.0
connecting to: test
>
> mongoimport --db denistestcsv --collection things --type csv --fields First,La
st,Visits,Location,Number,Url,Letter --file E:\temp\csv1.csv
但是这是错误的。正确的做法是要MONGO =>斌=>,然后执行命令,而无需输入mongo.exe
C:\mongodb\bin>mongoimport --db denistestcsv --collection things --type csv --fi
elds First,Last,Visits,Location,Number,Url,Letter --file E:\temp\csv1.csv
使用您的样本数据,保存到一个文件名为csv1.csv
:
"denis","omeri","21","Tirana","1","http:/google.com","m"
"olgert","llojko","20","Prrenjas","2","http:/facebook.com","m"
我跑到下面的命令行(拆分为便于阅读,在这里,用虚构的字段名):
mongoimport --db test
--collection things
--type csv
--fields First,Last,Visits,Location,Number,Url,Letter
--file d:\temp\csv1.csv
并且它成功导入:
connected to: 127.0.0.1
Thu Mar 28 07:43:53.902 imported 2 objects
而在things
DB:
> db.things.find()
{ "_id" : ObjectId("51543b09d39aaa258e7c12ee"),
"First" : "denis", "Last" : "omeri", "Visits" : 21,
"Location" : "Tirana",
"Number" : 1, "Url" : "http:/google.com", "Letter" : "m" }
{ "_id" : ObjectId("51543b09d39aaa258e7c12ef"),
"First" : "olgert", "Last" : "llojko", "Visits" : 20,
"Location" : "Prrenjas",
"Number" : 2, "Url" : "http:/facebook.com", "Letter" : "m" }
(我无法得到标题行选项2.4 CSV文件由于某些原因的工作,但在命令行指定字段的选项工程,以及。您还可以使用fieldFile
命令行选项,使用仅包含字段名称的文件)
Thnx寻求帮助。 我不明白这里有什么问题,我做了和你一样的事情,而且我仍然在“JavaScript执行失败:SyntaxError:意外的标识符” – 2013-03-30 09:37:12
相同的确切字段,数据如图所示,命令行don'工作?什么版本的MongoDb? – WiredPrairie 2013-03-30 11:42:36
这是另一个问题,我已将它发布在下面的评论中。 我执行错了。 非常感谢您的帮助... – 2013-03-30 11:46:11
大厦关闭丹尼斯Omeri的回答,我也有类似的问题,试图让一个mongolab MongoDB中的远程连接通过CLI实例。我不得不从MongoDB的bin
文件夹运行命令,但它并不像他的答案那样直截了当。
在我的情况下,我在OSX上通过自制软件安装mongodb
(假设你已经安装了自制软件,则为brew install mongodb
)。这把我的mongo系统文件放入:/usr/local/cellar/mongodb/3.0.3/bin
(在你的mongo版本中,子路径应该是好的)。
然后,找到以下项目:
- mongolab URL(应该是这样的ds123456-a.mongolab.com)
- 端口号(可能是27799或者2 ####)
- 数据库用户(你将不得不在mongolab对此进行设置)
- 数据库密码(在mongolab此设置以及)
就可以连接到mongolab使用以下字符串mongo ds123456.mongolab.com:27799/dbname -u dbuser -p dbpassword
还要注意:在我的情况,我通过Heroku的有设置mongolab附加。这意味着您必须通过heroku仪表板进行身份验证才能访问您的mongolab db user/pw安装区域。这些都没有真正记载在任何我能找到的地方,所以我加入这个答案来帮助下一个陷入这个混乱的灵魂。
你的CSV文件的几行看起来像什么? – WiredPrairie 2013-03-28 10:43:02
“denis”,“omeri”,“21”,“Tirana”,“1”,“http:/google.com”,“m” “olgert”,“llojko”,“20”,“Prrenjas”, “2”,“http:/facebook.com”,“m” – 2013-03-28 10:50:06
如果你只是尝试这些行,它的工作?你碰巧试试这个建议:http://stackoverflow.com/questions/4686500/how-to-use-mongoimport-to-import-csv – WiredPrairie 2013-03-28 10:56:30