2013-01-22 2 views
6

、この作品:pymongoを使用して既存のドキュメントコレクション/ dbに接続するにはどうすればよいですか?コマンドラインで

$ mongo 
> show dbs 
mydatabase 1.0GB 

しかし、これにはない:

$ python  
>>> import pymongo 
>>> connection = pymongo.MongoClient() 
>>> connection.mydatabase.find() 

私はここにドキュメントを読んで:

http://api.mongodb.org/python/current/tutorial.html

をしかし、どのように理解していませんいずれかに...

  1. (pymongoを使用して)既存のデータベースに接続します
  2. mongodb接続に存在するデータベースを照会します。

データベースにアクセスできないのはなぜですか?

+1

えっ、誰かが最近私も求めて覚えていないこのQをぶつけ。これは私の最初のモンゴートな質問でした。今私はそれを理解していない一度に気づかずに、これを十億回も正確にやっています... – Mittenchops

答えて

1

show dbsfind()は完全に異なるコマンドなので、2つのコマンドを比較することはできません。

connection.mydatabase.find() 

find()データベースレベルのドキュメントがないため、実際には何もしません。あなたは、おそらく探しています:

cursor = connection.mydatabase.mycol.find() 

私はあなたのデータを取得するために何のPythonプログラマが、そのようなものとforeachcursor VARていません。

mycolをドキュメントを含むコレクション名に置き換えてください。ここに示されているように

databases = connection.mydatabase.command({'listDatabases': 1}); 

:あなたのような何かを行うことができますデータベースのリストを照会については

http://docs.mongodb.org/manual/reference/command/listDatabases/#listDatabases

は、しかし、再び私はPythonプログラマ午前ませんが、これはあなたが始める必要があります。 Pythonのコマンドラインで

2

import pymongo 
from pymongo import MongoClient 
connection = MongoClient() ## connects by default to db at localhost:27017 
connection.database_names() ## python binding equivalent to show dbs. 

例の富があるように思えませんが、バインディングがPython Driver API Documentation内かなり完全であることが表示されます。

関連する問題