Integração de Python com banco de dados: Migrações de banco de dados

Capítulo 155

Tempo estimado de leitura: 4 minutos

+ Exercício
Audio Icon

Ouça em áudio

0:00 / 0:00

23.10. Integração de Python com Banco de Dados: Migrações de Banco de Dados

Python, uma linguagem de programação de alto nível, tem sido amplamente adotada em diversas aplicações, incluindo a criação de sistemas de gerenciamento de banco de dados. Django, um framework de desenvolvimento web de alto nível escrito em Python, facilita a criação de sistemas complexos e baseados em banco de dados. Uma das características mais poderosas do Django é seu sistema de migração de banco de dados.

O que são Migrações de Banco de Dados?

Migrações são como o Django propõe mudanças em seu banco de dados, como adicionar uma tabela ou um campo a uma tabela, ou alterar um campo. Em outras palavras, as migrações são a maneira do Django de propagar alterações que você faz em seus modelos (a representação de seus dados) para seu esquema de banco de dados.

Por que Migrações são Importantes?

As migrações são vitais para o desenvolvimento de sistemas porque permitem que os desenvolvedores evoluam o esquema do banco de dados ao longo do tempo, enquanto preservam os dados existentes. Sem um sistema de migração, os desenvolvedores teriam que fazer alterações manuais no esquema do banco de dados, o que é propenso a erros e pode resultar em perda de dados.

Como o Django Gerencia Migrações?

O Django gerencia as migrações através de um sistema de "migrações", que são arquivos Python que o Django gera automaticamente para refletir as alterações que você fez em seus modelos. Quando você executa o comando makemigrations, o Django cria um novo arquivo de migração para cada alteração que você fez em seus modelos.

Depois que as migrações são criadas, você pode aplicá-las ao seu banco de dados usando o comando migrate. Este comando irá executar todas as migrações pendentes, alterando o esquema do banco de dados para refletir as alterações que você fez em seus modelos.

Continue em nosso aplicativo e ...
  • Ouça o áudio com a tela desligada
  • Ganhe Certificado após a conclusão
  • + de 5000 cursos para você explorar!
ou continue lendo abaixo...
Download App

Baixar o aplicativo

Exemplo de Migração de Banco de Dados com Django

Vamos considerar um exemplo simples. Digamos que você tenha um modelo chamado Blog e você queira adicionar um novo campo chamado author. Primeiro, você adicionaria o campo ao seu modelo:

class Blog(models.Model):
    title = models.CharField(max_length=200)
    content = models.TextField()
    author = models.CharField(max_length=100)  # novo campo

Em seguida, você executaria o comando makemigrations para criar uma nova migração que reflete essa alteração:

python manage.py makemigrations

Este comando irá criar um novo arquivo de migração que contém o código para adicionar o campo author à tabela Blog. Finalmente, você aplicaria a migração ao seu banco de dados com o comando migrate:

python manage.py migrate

Este comando irá executar a migração, adicionando o campo author à tabela Blog no banco de dados.

Conclusão

A integração de Python com banco de dados através de migrações de banco de dados é uma parte essencial do desenvolvimento de sistemas com Python e Django. As migrações permitem que os desenvolvedores alterem o esquema do banco de dados de maneira controlada e segura, sem a necessidade de alterações manuais no esquema do banco de dados. O sistema de migração do Django torna esse processo fácil e intuitivo, permitindo que os desenvolvedores se concentrem em desenvolver a lógica de seus sistemas, em vez de se preocupar com o gerenciamento do banco de dados.

Agora responda o exercício sobre o conteúdo:

O que são migrações de banco de dados no contexto do Django, um framework de desenvolvimento web de alto nível escrito em Python?

Você acertou! Parabéns, agora siga para a próxima página

Você errou! Tente novamente.

As migrações de banco de dados no Django são mudanças que o framework aplica ao banco de dados, como adicionar ou modificar tabelas e campos, de acordo com as alterações feitas nos modelos. Elas garantem que o esquema do banco de dados esteja sincronizado com a descrição dos dados nos modelos do Django, facilitando a evolução do esquema ao longo do tempo.

Próximo capitúlo

Integração de Python com banco de dados: Otimização de consultas

Arrow Right Icon
Capa do Ebook gratuito Curso de criação de sistemas com Python e Django completo
88%

Curso de criação de sistemas com Python e Django completo

5

(4)

176 páginas

Baixe o app para ganhar Certificação grátis e ouvir os cursos em background, mesmo com a tela desligada.