Como conectar o banco de dados MongoDB no Python

Como conectar o banco de dados MongoDB no Python

MongoDB é um banco de dados NoSQL popular que é amplamente usado para armazenar e manipular grandes quantidades de dados. É conhecido por sua flexibilidade, escalabilidade e desempenho, tornando -a uma ótima opção para uma variedade de aplicações.

Neste artigo, veremos como nos conectar a um banco de dados MongoDB em python usando o 'pymongo' Biblioteca, que é um driver de MongoDB para Python. Também abordaremos algumas operações básicas, como a inserção de dados, a consulta do banco de dados e a atualização de documentos.

Pré -requisitos

Antes de começarmos, você precisará instalar o seguinte:

  • Python 3: Você pode baixar e instalar o Python no site oficial (https: // www.Pitão.org/). Certifique -se de instalar a versão mais recente do Python.
  • MongoDB: Você pode baixar e instalar o MongoDB no site oficial (https: // www.MongoDB.com/). Você também precisará configurar um servidor MongoDB e criar um banco de dados.
  • Biblioteca Pymongo: Você pode instalar esta biblioteca usando 'pip', o gerente de pacote Python. Abra um terminal e execute o seguinte comando:
    pip install pymongo  

Conectando -se ao banco de dados

Para se conectar ao banco de dados MongoDB, precisaremos importar o 'pymongo' biblioteca e criar um objeto cliente. O objeto cliente nos permitirá conectar -nos ao servidor MongoDB e executar operações no banco de dados.

Aqui está um exemplo de como criar um objeto cliente:

importar pymongo # conectar -se ao cliente de banco de dados = pymongo.Mongoclient ('MongoDB: // localhost: 27017/')
1234importar pymongo # conectar -se ao banco de dados.Mongoclient ('MongoDB: // localhost: 27017/')

Isso criará um objeto cliente conectado ao servidor MongoDB em execução na máquina local na porta padrão (27017). O 'Mongoclient ()' A função leva uma string de conexão como um argumento, que especifica o nome do host e a porta do servidor MongoDB.

Depois de criar o objeto cliente, você pode usá -lo para acessar os bancos de dados e coleções no servidor MongoDB.

Inserção de dados

Para inserir dados em uma coleção em MongoDB, você pode usar o 'insert_one ()' ou 'insert_many ()' Método do objeto de coleção.

Aqui está um exemplo de como inserir um único documento em uma coleção:

# Conecte -se ao 'Test' Database db = client ['teste'] # Get the 'Usuários' Usuários da coleção = db ['usuários'] # Insira um único documento resultado = usuários.insert_one ('name': 'John Smith', 'email': '[email protected] ') imprimir (resultado.insered_id)
12345678910111213# Conecte -se ao 'teste' databasedb = client ['test'] # get the 'users' collectionUsers = db ['usuários'] # insira um único documentResult = usuários.insert_one ('name': 'John Smith', 'email': '[email protegido]') print (resultado.insered_id)

Isso inserirá um único documento no 'Usuários' coleção com o nome 'John Smith' e e -mail '[Email protegido]'. A propriedade Inserted_id do objeto de resultado contém o ID exclusivo do documento inserido.

Você também pode inserir vários documentos ao mesmo tempo usando o 'insert_many ()' método. Este método leva uma lista de documentos como argumento.

Aqui está um exemplo de como inserir vários documentos:

# Insira vários documentos resultados = usuários.insert_many (['name': 'Jane Doe', 'Email': '[email protected] ', ' name ':' bob smith ',' email ':' [email protected] ']) imprimir (resultado.insered_ids)
12345678910111213# Insira vários documentosResult = usuários.insert_many (['name': 'Jane Doe', 'email': '[email protegido]', 'name': 'bob smith', 'email': '[email protegido]']) print ( resultado.insered_ids)

Isso inserirá dois documentos no 'Usuários' coleção com os nomes 'Jane Doe' e 'Bob Smith' e os respectivos endereços de e -mail. O 'insered_ids' Propriedade do objeto Resultado contém uma lista dos IDs exclusivos dos documentos inseridos.

Consultando o banco de dados

Para recuperar dados de uma coleção em MongoDB, você pode usar o 'encontrar()' Método do objeto de coleção. Este método retorna um objeto de cursor que pode ser iterado para recuperar os documentos que correspondem à consulta.

Aqui está um exemplo de como recuperar todos os documentos de uma coleção:

# Encontre todos os documentos cursor = usuários.encontre () # iterar sobre o cursor e imprima os documentos para o DOC em cursor: print (doc)
123456# Encontre todos os documentosCursor = usuários.encontre () # iterar sobre o cursor e imprima os documentos para documentos em cursor: print (doc)

Isso recuperará todos os documentos do 'Usuários' coleção e imprimi -los no console.

Você também pode especificar um filtro para recuperar apenas os documentos que correspondem aos critérios especificados. O filtro é especificado como um dicionário que contém os nomes e valores de campo para corresponder.

Aqui está um exemplo de como recuperar documentos com um valor de campo específico:

# Encontre documentos onde o nome é "John Smith" cursor = usuários.encontre ('nome': 'John Smith') # iterar sobre o cursor e imprima os documentos para o documento em cursor: print (doc)
123456# Encontre documentos onde o nome é "John Smith" cursor = usuários.encontre ('name': 'John Smith') # iterar sobre o cursor e imprima os documentos para documentos em cursor: print (doc)

Isso recuperará todos os documentos do 'Usuários' coleção onde o campo de nome é igual a 'John Smith'.

Você também pode usar operadores de comparação no filtro para especificar critérios mais complexos. Por exemplo, para recuperar documentos onde o campo de nome começa com a letra "J", você pode usar o '$ regex' operador:

# Encontre documentos onde o nome começa com "J" cursor = usuários.encontre ('name': '$ regex': '^j') # iterate sobre o cursor e imprima os documentos para o documento em cursor: print (doc)
123456# Encontre documentos onde o nome começa com "J" cursor = usuários.encontre ('name': '$ regex': '^j') # iterar sobre o cursor e imprima os documentos para documentos em cursor: print (doc)

Atualizando documentos

Para atualizar um documento em uma coleção, você pode usar o 'update_one ()' ou 'update_many ()' Método do objeto de coleção.

Aqui está um exemplo de como atualizar um único documento:

# Atualize o email do primeiro documento resultado = usuários.update_one ('nome': 'John Smith', '$ set': 'email': 'John [email protected] ') imprimir (resultado.modificado_count)
1234# Atualize o email do primeiro documentResult = usuários.update_one ('nome': 'John Smith', '$ set': 'email': '[email protegido]') print (resultado.modificado_count)

Isso atualizará o campo de email do primeiro documento que corresponde ao filtro '' Nome ':' John Smith ''. O 'modificado_count' propriedade do objeto de resultado contém o número de documentos que foram modificados.

Você também pode atualizar vários documentos ao mesmo tempo usando o 'update_many ()' método. Este método leva um filtro e um documento de atualização como argumentos.

Aqui está um exemplo de como atualizar vários documentos:

# Atualize o e -mail de todos os documentos Result = Usuários.update_many (, '$ set': 'email': '[email protected] ') imprimir (resultado.modificado_count)
1234# Atualize o email de todos os documentosResult = usuários.update_many (, '$ set': 'email': '[email protegido]') print (resultado.modificado_count)

Isso atualizará o campo de e -mail de todos os documentos no 'Usuários' coleção para '[Email protegido]'.
Fechando a conexão

Fechando a conexão

Depois de terminar de trabalhar com o banco de dados, é uma boa ideia fechar a conexão para liberar os recursos. Para fechar a conexão, você pode ligar para o 'fechar()' Método do objeto cliente.

Aqui está um exemplo de como fechar a conexão:

# Feche o cliente de conexão.fechar()
12# Feche o conexão.fechar()

É isso! Agora você aprendeu a se conectar a um banco de dados MongoDB no Python, inserir dados, consultar o banco de dados e atualizar documentos. Com essas habilidades, você deve começar a criar aplicativos que armazenem e manipulam dados usando o MongoDBB.