Inquiridor
Migração de dados de uma base sql server para outra remodelada

Pergunta
-
Prezados boa tarde,
Trabalho com um banco que foi totalmente remodelado. Porem agora existe a necessidade de migrar os dados do banco antigo para o novo, mantendo os valores das chaves primárias e estrangeiras. Eu poderia antes da migração "desligar" a validação das chaves e depois "ligar" novamente executando alguma procedure de sistema? Ou eu poderia criar o banco sem chaves e depois ir criando as chaves? Ou tem outra alternativa melhor? Agradeço as sugestões.
--
Gerson C. Júnior
http://www.ekow.com.br
Todas as Respostas
-
Gerson,
precisei fazer algo semelhante a um tempo atrás e fiz da seguinte maneira(lembro-me que na época foram SGDBs diferentes não sei se é o seu caso):1 - Criei uma base de teste, no caso uma cópia da base nova;
2 - Desenvolvi uma aplicação simples para ler o banco antigo que contém as informações;
3 - Na minha aplicação criei tabelas para trazer os dados do banco antigo, uma consulta simples;
4 - Na aplicação criei a conexão com a base de dados nova(TESTE) e imputei os dados dessa tabela(com um for para ler linha a linha) e salvando na tabela referente a gridview;
5 - No meu caso as tabelas que tinham FK eu imputava os dados nas 2 tabelas, a que continha a PK colocava os dados normalmente e na que tem a FK colocava apenas na coluna da FK, assim a ligação já fica pronta. Mas na hora de popular as outras colunas dessa tabela que tem a FK eu não populava o campo da FK que já foi populado anteriormente.
Foi uma lógica bem louca e trabalhosa, ainda mais porque a base era grande, mas funcionou na boa e não tive dor de cabeça.
Espero que eu tenha ajudado.
Gustavo www.graweb.com.br
- Editado aprendizCSharp quarta-feira, 26 de junho de 2013 02:36 Ajuste texto
-
Bom dia Gerson !
Eu deixaria no banco novo ja as chaves que a base terá, uma por que isso garante a integridade dos seus relacionamentos, outro motivo é que se voce "desligar" as chaves e depois de inputar os dados "ligar" caso tenha alguma falha de relacionamento entre as chaves dará erro e será mais trabalhoso corrigir do que de inicio quando voce esta inserindo os dados e voce pode ja ir verificando o que pode acontecer.
Alexandre Matayosi Conde Mauricio.
-
Gerson
Eu manteria as integridade nesta nova base, ao desligar as constraints vc poderá levar alguns vicios da base antiga para a nova...
Eu faria um pacote DTSx para importar as novas tabelas obedecendo as integridades referenciais...
Att.
Marcelo Fernandes
MCP, MCDBA, MCSA, MCTS, MCITP, MCT.
Se útil, classifique!!!
Me siga no twitter: @marcelodba