如何在Python中创建MongoDB集合(Collection)

在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。