使用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()”方法从数据库中删除集合。