コマンド ライン (MongoDB) からインポートまたはエクスポートしようとする場合: 例:
> mongoimport --db denistest --collection things --type csv --file C:/Users/Administrator/Desktop/csv_data.csv
「JavaScript の実行に失敗しました: SyntaxError: 予期しない識別子」エラーが発生していますか?
ここで何が問題なのですか?
コマンド ライン (MongoDB) からインポートまたはエクスポートしようとする場合: 例:
> mongoimport --db denistest --collection things --type csv --file C:/Users/Administrator/Desktop/csv_data.csv
「JavaScript の実行に失敗しました: SyntaxError: 予期しない識別子」エラーが発生していますか?
ここで何が問題なのですか?
私はついに問題を見つけました。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 => bin => に移動し、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
オプション)
Dennis Omeri の回答に基づいて、CLI を介して mongolab MongoDB インスタンスにリモート接続しようとすると、同様の問題が発生しました。MongoDBのフォルダーからもコマンドを実行する必要がありましたbin
が、彼の答えが示すほど簡単ではありません。
私の場合、mongodb
OSXに自作経由でインストールしました(brew install mongodb
自作がインストールされていると仮定します)。それは私のmongoシステムファイルを入れました:(/usr/local/cellar/mongodb/3.0.3/bin
あなたのバージョンのmongoのサブで、パスは良いはずです)。
次に、次の項目を見つけます。
次に、次の文字列を使用してmongolabに接続できます
mongo ds123456.mongolab.com:27799/dbname -u dbuser -p dbpassword
また、注意: 私の場合、Heroku アドオンを介して mongolab をセットアップしました。つまり、mongolab db user/pw セットアップ エリアにアクセスするには、heroku ダッシュボードで認証する必要があります。これはどこにも実際に文書化されていないので、この混乱に迷い込んだ次の魂を助けるために、この回答を追加しています.