Python MongoDB – consulta create_index

MongoDB

Indexación 

La indexación ayuda a consultar los documentos de manera eficiente. Eso

PyMongo contiene una función create_index() para crear explícitamente un índice. De forma predeterminada, _id es el único índice presente en la colección. Esta función puede aceptar una clave o una lista de pares (clave, dirección).

Sintaxis: 

create_index(keys, session=None, **kwargs)

Veamos algunos ejemplos.

Ejemplo 1:

Base de datos de muestra:

Python3

from pymongo import MongoClient
   
     
# creation of MongoClient
client = MongoClient()
   
# Connect with the portnumber and host
client = MongoClient("mongodb://localhost:27017/")
   
# Access database
mydatabase = client['GFG']
   
# Access collection of the database
mycollection = mydatabase['College']
 
# Before Creating index
index_list = sorted(list(mycollection.index_information()))
print("Before Creating index")
print(index_list)
 
# Creating index
mycollection.create_index("student_id", unique = True)
 
# After Creating index
index_list = sorted(list(mycollection.index_information()))
print("\nAfter Creating index")
print(index_list)

Producción:

Before Creating index
['_id_']

After Creating index
['_id_', 'student_id_1']
  1. Aquí, creamos un índice llamado student_id usando el método create_index(). Esto da como resultado dos índices en los documentos _id y student_id .
  2. Usando el método index_information() , obtenemos todos los índices en la colección,

Ejemplo 2:

Python3

from pymongo import MongoClient
   
     
# creation of MongoClient
client = MongoClient()
   
# Connect with the portnumber and host
client = MongoClient("mongodb://localhost:27017/")
   
# Access database
mydatabase = client['GFG']
   
# Access collection of the database
mycollection = mydatabase['College']
 
record = {'_id': 4,
          "student_id": 873,
          "name": "John",
          "section": "A"}
 
mycollection.insert_one(record)

Producción:

                        Rastreo (última llamada más reciente) en el registro mycollectioninsert_onerecord

DuplicateKeyError: E11000 colección de errores de clave duplicada: índice GFG.College: student_id_1 clave duplicada: { : 873 }

DuplicateKeyError

Publicación traducida automáticamente

Artículo escrito por gauravbabbar25 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *