2016-01-12 51 views
1

我已經從本地數據庫導出mongoDB,它的格式如下,並保存爲CSV文件。將mongodb數據庫導入到mongolab

_id,accomodation,state,user 
ObjectId(565dae266dbda6964f061d99),No,California,ObjectId(5651fb48b0dfa73c134df161) 

然後我嘗試,我看了那麼它們存儲

ObjectId(565dae266dbda6964f061d99) in this format 
"_id": { 
     "$oid": "565dae266dbda6964f061d99" 
    } 

在嚴格模式下面的命令

mongoimport -h hostname -d dbname -c collectionname -u username 
-p password --file filename.csv --type csv --headerline 

導入成功,但Mongolab店DB運行mongoimport但數據我進口它只是存儲爲ObjectId(565dae266dbda6964f061d99)...我想知道如何導入保存在安全模式下它我的所有ObjectID數據存儲在「$ oid」:「565dae266dbda6964f061d99」格式在我的mongolabD灣

讓我知道你是否有任何問題..

謝謝。

+0

快速說明:MongoLab不以嚴格的JSON格式存儲數據,所有的MongoDB數據仍保存爲BSON。但是,Web UI中的文檔編輯器是JSON編輯器,因此必須使用嚴格的MongoDB擴展JSON以JSON格式查看和編輯ObjectId。您會注意到,如果您通過mongo管理shell連接到MongoLab數據庫並查詢數據,則這些_id值將顯示爲ObjectId's(因爲shell是JavaScript解釋器並且不會執行嚴格的JSON)。 – pneumee

回答

1

正如你在你的問題正確地指出,MongoLab使用Strict MongoDB Extended JSON所以對象ID表示這樣的:

{ "$oid": "<id>" } 

有沒有改變這個對託管服務的方式。

+0

我不知道,但這個數據{ 「_id」: 「的ObjectId(565dae266dbda6964f061d9a)」, 「便利」: 「否」, 「用戶」: 「的ObjectId(5651fb48b0dfa73c134df161)」 }本地查詢工作,但一旦我們把相同的mongolab查詢不起作用一旦我改變ObjectId與$ oid然後它開始工作... –

+0

你使用控制檯或ORM? – Alex

+0

我正在使用控制檯.... –