Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Henrique Fleury

Como migrar os dados de um banco para outro.

Recommended Posts

Pessoal tudo bem?

E o seguinte, eu estou reformulando um sistema do 0% que já tem muitos dados no banco de dados. Eu reformulei o banco para aumentar campos em algumas tabelas, amarrar outros campos, alterou o nome de todas as tabelas e campos. Porem é claro eu preciso pegar os dados que estão no banco antigo e passar para esse novo que eu reformulai e a única maneira que estou vendo é puxar todos os dados da tabela e sair vendo e mudando linha por linha, porem isso não e viável para mim pela questão do banco já ser um tanto grande então eu perderia muito tempo.

Alguém poderia me dar uma ajuda em como eu consigo fazer isso, passar os dados de um banco para outro. Uma maneira mais rápida e fácil sem ter que sair mudando todos os cadastrão.

Lembrando que os dois bancos estão feitos no MySQL.

Exemplo da menor tabela.

Tabela antiga:
idsiscad_pdvs 		int(10) chave primaria
sap 			int(10)
pdvNome		        varchar(200)
status			int(10)
cnpjPDV		        varchar(20)
pdvRede		        varchar(20)

Tabela nova:
Id_pdv			int(10) chave primaria
Id_rede			int(10) chave estrangeira
num_sap		        int(11)
nom_pdv		        varchar(50)
num_cnpj		char(14)

Com isso da para ver que se eu for passar o que esta na tabela antiga para a tabela nova falta um campo, o campo que na tabela antiga e pdvRede eu criei uma tabela separada e coloquei como chave estrangeira.

E então pessoal como eu posso fazer essa migração sem ter que ir linha por linha mudando a dedo cada uma das linhas?

Muito obrigado pela ajuda pessoal.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nas tabelas onde a mais nova tem um número maior de campos, fica fácil, basta criar campos com valor nulo (usando ALTER TABLE) na tabela antiga (se certificando também que os campos estejam comuns das duas tabelas estejam nas mesmas posições) e exportar para CSV e importar novamente para a nova tabela (presumindo que você tenha phpMyAdmin para fazer as exportações e importações).

 

Agora nesse exemplo que você deu a tabela mais nova tem menos campos (o campo ´status´ é desnecessário? Então é só eliminá-lo, com ALTER TABLE)

 

Sintaxe de ALTER TABLE: http://dev.mysql.com/doc/refman/4.1/pt/alter-table.html

 

É RECOMENDÁVEL FAZER BACKUP DE TUDO ANTES DE TENTAR QUALQUER COISA

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.