在MongoDB中,数据存储在集合(Collection)里,相当于关系型数据库中的“表”。使用Python的pymongo
库可以轻松创建集合,并操作其中的数据。下面介绍基本用法。
1. 创建集合
与创建数据库类似,在MongoDB里,“创建集合”这一操作并不会立即在数据库中生成物理文件。只有当插入了文档后,才会真正落地。
import pymongo
# 创建MongoClient连接
myclient = pymongo.MongoClient("mongodb://localhost:27017/")
# 指定数据库(mydatabase)
mydb = myclient["mydatabase"]
# 指定集合(customers)
mycol = mydb["customers"]
print("集合 'customers' 已被声明,但在插入数据前不会真正创建。")
上面代码中,只是声明了名为customers
的集合对象,MongoDB会等到我们向此集合插入数据后才实际生成它。
2. 检查集合是否存在
如果尚未插入任何文档,则该集合并不会真实存在。因此,若要确认集合已被创建,需要先插入至少一条数据。然后你可以列出所有集合名字来判断:
# 列出当前数据库中所有集合
print(mydb.list_collection_names())
# 或者判断某个集合是否在返回列表中
collist = mydb.list_collection_names()
if "customers" in collist:
print("集合 'customers' 已存在!")
else:
print("集合 'customers' 不存在,或尚未插入数据。")
提示与注意
- MongoDB 的“延迟创建”意味着只声明集合不会实际创建,需要插入文档后才出现。
- 如果要让集合立即可见,可先写入一条测试数据。
- 使用
mydb.list_collection_names()
可查看数据库内所有已创建的集合。
通过以上方法,你就能在Python中顺利声明并使用MongoDB集合,并在正式插入数据后让集合落地生效。接下来可进一步了解插入文档或查询的方法,以更全面地操作MongoDB。