本教程将要告诉你如何使用pymongo模块来操作MongoDB数据库。
一、先决条件
开始之前,我们需要确定电脑已经安装了pymongo和MongoDB.
1.安装pymongo
使用pip安装pymongo,在cmd命令行输入:
pip install pymongo
在python IDLE 中输入:import pymongo 没有报错表示安装成功。
2.安装MongoDB
参考这个链接:http://www.cnblogs.com/billyzh/p/5913687.html
如果不安装MongoDB会出现后面的一个问题。
3.MongoDB中的基本概念
在MongoDB中基本的概念是文档(document)、集合(collection)、数据库(database).
下图(盗的图)可能容易理解MongoDB中的一些概念:
通过下图实例,可以更直观的的了解MongoDB中的一些概念:
二、通过MongoClient建立一个连接
开始使用pymongo的第一步是创建一个MongoClient,来运行mongod实例。
>>> from pymongo import MongoClient
>>> client = MongoClient()
上面代码将会连接默认的host和port。也可指定:
>>> client = MongoClient('localhost',27017)
或者用MongoDB URI格式:
>>> client = MongoClient('mongodb://localhost:27017/')
默认状态下Mongo客户端是没有加密的,但是如果需要通过账户登录:
>>> client = MongoClient('mongodb://账号:密码@localhost:27017/')
三、获取一个数据库
一个MongoDB实例可以支持多个独立的数据库。使用PyMongo时,可以通过访问MongoClient的属性的方式来访问数据库。
>>> db = client.test_database
如果数据库名字使用属性方式不能访问(像test-database),也可以通过访问字典值的方式。
>>> db = client['test-database']
四、获取一个Collection
一个collection是一组存在MongoDB中的文件(documents),大致可以认为是关系型数据库中表的概念。
获取Collection方法与获取数据库方法一致:
>>> collection = db.test_collection #注意连接符是_不是-
或用字典方式:
>>> collection = db['test-collection']
需要注意的是,MongoDB里的collections(集合)和databases(数据库)都是惰性创建的,前面提到的所有命令
实际上没有对MongoDB server进行任何操作。当第一个文件插入后,collections和databases才会被创建。
五、文件(Documents)
数据在MongoDB中是用JSON类文件的形式表示和保存起来的。在p