
# 访问数据库
假设客户端应用程序已经完成数据库连接，并初始化好一个 MongoClient client.
#### 访问DataBase
当已经有一个初始化好的MongoClient实例后，通过如下方式来访问一个database，示例如下：
```
db=client.test_database
```
或者采用如下方式指定：
```
db=client["test_database"]
```
#### 访问集合
```
collection=db.test_collection
```
或者采用如下方式指定：
```
collection=db["test_collection"]
```
#### 显示的创建一个集合
也可以通过 createCollection()方法显示的创建一个集合，并在创建时候指定该集合的属性。
```
collection = db.create_collection("test")
```
#### 插入数据
```
student = {
    'id': '20170101',
    'name': 'Jordan',
    'age': 20,
    'gender': 'male'
}
result = collection.insert(student);
```
#### 删除数据
```
result = collection.delete_one({'name': 'Kevin'})
```
#### 删除表
```
db.drop_collection("test")
```
#### 读数据
```
result = collection.find_one({'name': 'Mike'})
```
#### 带过滤条件的查询
```
result = collection.find_one({"author":"Mike"}
```
#### 运行命令
执行 buildInfo 和 collStats
```
db.command("collstats","test")
db.command("buildinfo")
```
#### 计数
```
count = collection.find().count()db.command("buildinfo")
```
#### 排序
```
results = collection.find().sort('name', pymongo.ASCENDING)
print([result['name'] for result in results])
```
#### 创建索引
```
result=db.profiles.create_index([('user_id',pymongo.ASCENDING)],... unique=True)
```
