Você pode ir para cima - de uma versão mais antiga para uma mais recente, por ex. você pode fazer backup de seu banco de dados em 2008 R2 e restaurar esse backup em sua instância de 2012 - mas NÃO PODE anexar/desanexar ou fazer backup/restaurar um banco de dados de uma versão mais recente do SQL Server para uma versão mais antiga - as estruturas de arquivos internos são muito diferentes para suportar compatibilidade com versões anteriores.
Além disso:como as estruturas de arquivo internas do
.mdf
são muito diferentes e específicos para cada versão do SQL Server, você NÃO ser capaz de usar o mesmo .mdf
de duas versões diferentes do SQL Server. Isso definitivamente não vai funcionar. Você pode contornar esse problema
-
usando a mesma versão do SQL Server em todas as suas máquinas - então você pode facilmente fazer backup/restaurar bancos de dados entre instâncias
-
caso contrário, você pode criar os scripts de banco de dados para estrutura (tabelas, exibição, procedimentos armazenados etc.) e para conteúdo (os dados reais contidos nas tabelas) no SQL Server Management Studio (Tasks > Generate Scripts
) ou usando uma ferramenta de terceiros
-
ou você pode usar uma ferramenta de terceiros como o SQL da Red-Gate Comparar e SQL Data Compare fazer "diferenças" entre sua origem e destino, gerar scripts de atualização a partir dessas diferenças e, em seguida, executar esses scripts na plataforma de destino; isso funciona em diferentes versões do SQL Server.