使用Python删除MongoDB中已存在的集合


MongoDB是一个广受欢迎的开源数据库,它以灵活的类似JSON的格式存储数据。它不使用传统的行列式存储数据技术,而是采用更灵活的方法,从而提高了可扩展性。

该数据库旨在处理海量数据,因此非常适合现代应用程序。MongoDB数据库由“集合”组成,这类似于RDBMS中的表。

集合是由包含不同类型值的字段组成的文档的集合。一个数据库可以包含多个集合,每个集合可以包含多个文档。在本文中,我们将使用Python命令删除MongoDB集合。每个集合都有自己的模式,这取决于文档的结构。

安装PyMongo

PyMongo是程序员与“MongoDB”数据库交互的Python驱动程序。它提供了一个接口,可以使用Python对MongoDB数据执行多种操作。我们可以使用命令行上的Python包管理器安装“PyMongo”:

pip install pymongo 

安装PyMongo库后,我们可以在本地IDE中导入它。

创建数据库

我们需要一个我们将对其进行操作的参考数据库。创建MongoDB数据库并非难事。我们必须从互联网下载最新版本的MongoDB并将其安装在系统上。之后,我们将启动“MongoDB”服务器。我们可以使用默认服务器和默认端口号,并开始“连接”过程。我们可以通过传递数据库名称和集合名称来手动创建数据库。数据可以以JSON或CSV文件格式导入。

通过PyMongo将MongoDB连接到Python

这是最重要的一步,因为它涉及到两个平台之间连接的创建。我们将使用“pymongo.MongoClient()”函数创建一个MongoClient对象。通过将服务器地址作为此函数的参数来建立连接。

语法

Mongo_client = pymongo.MongoClient("Connection address") 

让我们应用此方法来建立连接。

在Python中创建连接以读取集合

这里我们尝试读取存储在MongoDB中的集合。在下面的例子中:

  • 我们导入了“PyMongo”库并创建了一个“MongoClient”对象,它允许我们建立连接并访问数据库。

  • 我们传递了一个服务器地址,将地址名称指定为“localhost”,这意味着MongoDB服务器与Python程序运行在同一台机器上。我们使用了MongoDB服务器的默认端口号:“27017”。

  • 之后,我们指定了数据库和集合名称。

  • 我们创建了一个集合并填充了它。

  • 我们使用“find()”方法检索存储在集合中的文档。

示例

import pymongo
Mongo_client = pymongo.MongoClient("mongodb://127.0.0.1:27017/")

# Database name
database = Mongo_client["mydb"]

#Getting the database instance
database = Mongo_client['mydb']

#Creating a collection
collection = database['example']

#Inserting document into the collection
data = [{"_id": "101", "name": "Ram", "age": "26", "city": "Hyderabad"},
{"_id": "102", "name": "Rahim", "age": "27", "city": "Bangalore"},
{"_id": "103", "name": "Robert", "age": "28", "city": "Mumbai"}]
res = collection.insert_many(data)
print("Data inserted ......")

#Retreving the data
documents = collection.find()
print("Contents of the collection: ")
for document in documents:
   print(document)

输出

Data inserted ......
Contents of the collection:
{'_id': '101', 'name': 'Ram', 'age': '26', 'city': 'Hyderabad'}
{'_id': '102', 'name': 'Rahim', 'age': '27', 'city': 'Bangalore'}
{'_id': '103', 'name': 'Robert', 'age': '28', 'city': 'Mumbai'}

现在,我们已经创建了一个数据库和一个集合,让我们来看看从数据库中删除集合的方法。

使用drop()方法删除集合

这是一个非常简单的从数据库中删除集合的方法。让我们来了解一下。

  • 建立连接后,我们使用drop()方法从数据库中删除目标集合。

  • 删除集合后,我们将无法使用“find()”方法检索其文档。

  • 由于集合已被删除,因此返回“None”作为输出。

示例

import pymongo
Mongo_client = pymongo.MongoClient("mongodb://127.0.0.1:27017/")

# Database name
database = Mongo_client["mydb"]

#Getting the database instance
database = Mongo_client['mydb']

#Creating a collection
collection = database['example']

documents = collection.find()
print("Contents of the collection: ")
for document in documents:
   print(document)

#dropping the collection
print(collection.drop())
print("Collection Dropped ......")

输出

F:\Examples>python test.py
Contents of the collection:
{'_id': '101', 'name': 'Ram', 'age': '26', 'city': 'Hyderabad'}
{'_id': '102', 'name': 'Rahim', 'age': '27', 'city': 'Bangalore'}
{'_id': '103', 'name': 'Robert', 'age': '28', 'city': 'Mumbai'}
None
Collection Dropped ......

如果您尝试打开MongoDB数据库并验证集合,您会发现该集合

结论

本文重点介绍了使用Python编程删除数据库中存在的“集合”这一简单的“MongoDB”操作。我们使用“PyMongo”库来访问MongoDB数据库。我们建立了连接并指定了目标数据库和集合名称。最后,我们使用“drop()”方法从数据库中删除集合。

更新于:2023年5月5日

463 次浏览

启动您的职业生涯

通过完成课程获得认证

开始学习
广告