📜  使用 PyMongo 获取集合索引的所有信息

📅  最后修改于: 2022-05-13 01:55:41.854000             🧑  作者: Mango

使用 PyMongo 获取集合索引的所有信息

先决条件: MongoDB Python基础

本文是关于使用 PyMongo 模块的index_information()函数显示 Collection 的索引信息的。

index_information()返回一个字典,其中键是索引名称(由create_index()返回),值是包含有关每个索引的信息的字典。字典保证至少包含一个键,“键”是指定索引的(键,方向)对列表(传递给 create_index())。它还将包含有关索引的任何其他元数据,除了已清理的“ns”和“name”键。

让我们开始:

  1. 导入所需模块:使用以下命令导入所需模块:
    from pymongo import MongoClient
    

    如果您的机器上尚未安装 MongoDB,您可以参考指南:使用Python安装 MongoDB 的指南

  2. 创建连接:现在我们已经导入了模块,是时候建立与 MongoDB 服务器的连接了,大概是在 localhost(主机名)的端口 27017(端口号)上运行。
    client = MongoClient(‘localhost’, 27017)
  3. 访问数据库:因为与 MongoDB 服务器的连接已建立。我们现在可以创建或使用现有的数据库。
    mydatabase = client.name_of_the_database
  4. 访问集合:我们现在使用以下语法从数据库中选择集合:
    collection_name = mydatabase.name_of_collection
  5. 获取索引信息:使用函数index_information获取集合的所有索引信息。
    collection_name.index_information()
    

例子:

样本数据库:

python-mongodb-get-index

# Python Program for demonstrating the 
# PyMongo Cursor to Pandas DataFrame
  
   
# Importing required modules
from pymongo import MongoClient
from pandas import DataFrame
   
# Connecting to MongoDB server
# client = MongoClient('host_name',
# 'port_number')
client = MongoClient('localhost', 27017)
  
# Connecting to the database named
# GFG
mydatabase = client.GFG
  
# Accessing the collection named
# Student
mycollection = mydatabase.Student
   
# Displaying the information of all the indexes
# using the function index_information()
ind_info = mycollection.index_information()
print(ind_info)

输出: