Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

[Projeto] Migrations como criar tabelas no Banco de Dados de uma Migration já existente

No projeto ScreenSound já existe as migrations AdicaoDaTabelaGenero e RelacionandoMusicaGenero mas no banco de dados ainda não Como gerar estas migrations já existentes p/ o banco de dados?

4 respostas
solução!

Olá Cauê! Tudo certo?

Para aplicar as migrations que já existem no seu projeto ao banco de dados, você pode usar o comando update-database no Console do Gerenciador de Pacotes do Visual Studio ou no terminal, se estiver usando a CLI do .NET.

Aqui está um passo a passo para te ajudar:

  1. Usando o Console do Gerenciador de Pacotes no Visual Studio:

    • Abra o Console do Gerenciador de Pacotes no Visual Studio. Você pode fazer isso indo em Ferramentas > Gerenciador de Pacotes NuGet > Console do Gerenciador de Pacotes.
    • Certifique-se de que o projeto correto está selecionado como projeto de inicialização.
    • Execute o comando: Update-Database. Isso aplicará todas as migrations pendentes ao banco de dados.
  2. Usando a CLI do .NET:

    • Abra o terminal no diretório do seu projeto.
    • Execute o comando: dotnet ef database update. Este comando também aplicará todas as migrations pendentes ao banco de dados.

Esses comandos vão sincronizar o estado do banco de dados com as migrations que você já criou no seu projeto, criando as tabelas e relacionamentos conforme definido nas suas migrations.

Espero ter ajudado e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.

Obs.: Minhas migrations não estão pendentes, infelizmente tive que formatar meu micro, baixei um projeto mais recente com as migrations já existentes, então meu banco de dados ficou incompatível com o projeto. Para não criar novas migrations de "AdicaoDaTabelaGenero e RelacionandoMusicaGenero" tipo "AdicaoDaTabelaGenero2 e RelacionandoMusicaGenero2 quero aproveitar já existente no projeto.

Imagem das Tabelas do bando de dadosImagem migrations AdicaoDaTabelaGenero e RelacionandoMusicaGenero do projecto

Update da migration da tabela de Genero

Oi, Cauê!

O problema está no fato de que o banco de dados foi perdido, mas as migrations continuam no projeto. Para reaplicar essas migrations existentes no banco, siga estes passos:

  1. Garanta que seu projeto está buildando corretamente. O erro "Build failed" impede qualquer comando no Package Manager Console ou na CLI. Verifique se todos os projetos estão referenciados corretamente e se não há erros no código.

  2. Defina um único projeto de inicialização. Você está com "Multiple startup projects set", o que causa conflito. No Visual Studio:

    • Clique com o botão direito no projeto principal (ScreenSound.Shared.Dados ou outro que contenha o DbContext).
    • Selecione Definir como projeto de inicialização.
  3. Execute o comando para criar o banco de dados com as migrations existentes:

    
     Update-Database
     

    Ou, usando a CLI do .NET:

    
     dotnet ef database update
     

    Isso vai criar no banco de dados todas as tabelas e relacionamentos das migrations que já estão no projeto.

Se o erro de build continuar, verifique:

  • Se há erros de namespaces ou dependências.
  • Se o projeto que contém o DbContext está corretamente referenciado no projeto principal.

Fico à disposição.