Neste artigo, conheceremos o pacote DBM, que faz parte da biblioteca interna do Python. Uma interface básica do tipo dicionário do tipo DBM (gerenciador de banco de dados), que normalmente é usado no sistema operacional UNIX, é fornecido pelo pacote DBM na linguagem de programação Python. É muito mais simples escrever, atualizar e recuperar os dados de um banco de dados quando os dados são armazenados pelo DBM na forma de entradas simples do par de valores-chave, como um dicionário. Isso é feito usando uma única chave primária (referida simplesmente como "chave") para armazenar os dados em blocos de um tamanho especificado.
Um objeto DBM é um objeto semelhante ao dicionário. Portanto, todas as funções de dicionário podem ser usadas. O objeto DBM pode executar os métodos Open (), Get (), Pop (), Add () e Update (). Este artigo coloca principalmente mais ênfase no procedimento aberto do módulo DBM (). Esta função permite os seguintes sinalizadores de modo ao abrir o banco de dados:
Ele retorna o endereço de objeto correspondente do arquivo de banco de dados.
Exemplo 1: Usando o método dos valores do módulo DBM para adicionar e imprimir os valores de um banco de dados
Neste exemplo, criaremos um novo banco de dados e imprimiremos os valores do banco de dados usando o iterador do método valores ().
Na primeira linha, o módulo DBM da biblioteca de Python é importado para usar seus métodos. Na próxima linha, um banco de dados é criado usando a função Open () com o nome do arquivo "D1B" e o modo "N" (que cria um novo banco de dados vazio que é acessível para ler e escrever.) Este banco de dados é armazenado na variável denominada "dados". Em seguida, os novos valores e chaves são inseridos neste banco de dados. Os atributos deste banco de dados são iterados em um loop for, e cada atributo é apresentado no lado da saída usando o método de impressão, conforme demonstrado na imagem a seguir:
Exemplo 2: Usando o método aberto para criar um banco de dados e inserir valores e usar o método das chaves do módulo DBM para adicionar os valores de impressão de um banco de dados
Neste exemplo, criaremos um novo banco de dados e imprimiremos os valores do banco de dados usando o iterador do método keys ().
O primeiro passo é importar o pacote DBM para que seus processos possam ser usados em nosso banco de dados. A função aberta () no modo "n" é então usada para estabelecer um novo banco de dados com o termo "d1b". Este banco de dados é armazenado na variável denominada "dados". Na próxima linha, inserimos os valores com suas respectivas chaves em nosso novo banco de dados, "dados". Em seguida, um loop for iterado para as chaves no banco de dados e cada entidade é exibida no terminal de saída. Como visto no trecho, ele imprime todos os valores do nosso banco de dados que se correlacionam com a chave.
Exemplo 3: Usando o método Open e Keys para criar um banco de dados e adicionar valores a ele com o mmethod pop para excluir as entradas
Agora, usaremos mais algumas funções para obter uma melhor compreensão dos bancos de dados no Python.
Um novo banco de dados vazio é criado "d1b" no modo "n" ou no modo de leitura e escrita, que é armazenado na variável chamada "dados". Em seguida, 3 chaves e seus valores correspondentes são inseridos no banco de dados. Na próxima linha, todos os valores são impressos usando o iterador Keys () como já vimos antes. Em seguida, o item de "email" é exibido no banco de dados usando a função pop. Então, novamente, todas as entidades do banco de dados são impressas usando o iterador Keys () no loop for.
Podemos ver que três valores foram exibidos antes de aparecer e apenas 2 valores foram exibidos após o surto. A função pop remove a chave e o valor especificados, assim como em um dicionário ou lista.
Exemplo 4: Usando o método aberto, chaves e claro do módulo DBM para criar, adicionar valores e excluir o banco de dados
Neste exemplo, faremos uso de outra função chamada "clear ()", que também é a função do dicionário.
Um novo banco de dados é criado primeiro usando a função aberta () do módulo DBM no modo "n". Em seguida, 3 valores e suas respectivas chaves são inseridas no banco de dados. Em seguida, todos os valores são impressos usando o iterador Keys () com um loop para loop. A função clear () é utilizada na linha a seguir para remover todos os registros no banco de dados. Então, novamente, um loop for iterado sobre as chaves do banco de dados e impresso.
Podemos ver na captura de tela a seguir que, após a função clear (), nada é exibido, pois o banco de dados está vazio.
Exemplo 5: Usando o método aberto do módulo DBM com o modo "R" como parâmetro para ler um banco de dados existente
Agora, veremos o que acontece se abrirmos um banco de dados no modo "R".
Primeiro, o módulo DBM é importado. Na próxima linha, um banco de dados com o nome "d1b" é aberto no modo "R", que é apenas o modo de leitura e é salvo como "dados". Só podemos ler os dados deste banco de dados para que usem a função get () para ler os valores do banco de dados. Na próxima linha, um loop for iterado para as chaves do banco de dados, e os dados são lidos pela função get (). Conforme descrito na imagem a seguir, a leitura dos dados é demonstrada na interface de saída usando a diretiva de publicação.
Exemplo 6: Usando o método aberto do módulo DBM com o modo "W" como parâmetro para ler e editar um banco de dados existente
Neste exemplo, abriremos um banco de dados já existente no modo "W" no qual podemos ler e escrever.
No código fornecido, o módulo DBM é importado primeiro. Na próxima linha, o banco de dados "D1B" é aberto no modo "W" e armazenado na variável "Data". Na linha seguinte, um loop for iterado através das chaves e cada valor correspondente é lido e impresso. Os registros são então removidos do banco de dados que usa a função clear (). Então, novamente, os dados dos dados são lidos usando o iterador de chaves com a ajuda do loop for.
Como podemos ver no seguinte terminal de saída, todos os dados no banco de dados são impressos primeiro. Depois de limpar o banco de dados, não havia dados restantes e uma linha vazia pode ser vista.
Conclusão
Os módulos DBM são úteis quando seus requisitos de dados podem ser armazenados como pares de chave/valor. Você pode usar um dicionário persistente de DBM como esse quando os requisitos de dados são mínimos ou há uma pequena quantidade de dados e até usar um banco de dados relacional se precisar de um suporte à transação (quando várias coisas acontecem ao mesmo tempo).