我想使用存储过程来更新mongoDB中的表。数据在CSV文件中,我想通过拆分访问它。我已经在JavaScript中完成了这么多次而没有任何问题。我的开始是:
var fso = new ActiveXObject("Scripting.FileSystemObject");
var ForReading = 1;
var daFile = fso.OpenTextFile("C:\\MyFolder\\myfile.dat",ForReading);
while (!daFile.AtEndOfStream)
{
daLine = daFile.readLine();
// do the stuff
}
但该命令在ActiveXObject上窒息。我猜mongo不知道ActiveXObjects所以我可以用什么来读取文件中的行?
答案 0 :(得分:0)
ActiveXObject
对象是Microsoft扩展,仅在Internet Explorer或调用Internet Explorer JavaScript引擎的应用程序中受支持。
mongo
shell和MongoDB服务器使用的JavaScript引擎(如MongoDB 2.6)是开源V8 engine。
MongoDB没有相应的"存储过程"可以加载和处理服务器上的文本文件。您应该从客户端驱动程序或应用程序执行导入操作。
如果您要导入一个简单的CSV文件,可以使用mongoimport
这一简单的方法,安装MongoDB shell和工具时会包含该文件。
假设您的CSV的第一行包含列标题,命令行将类似于:
mongoimport --db my_db --collection mycoll --type csv --headerline < myfile.dat