Linux slogan
Visite também: Segurança Linux · BR-Linux.org · Dicas-L · Doode · NoticiasLinux · SoftwareLivre.org · UnderLinux



» Screenshot
Linux: Ubuntu + beryl
Por meiokilo
» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha


Dica

MySQL: Duplicando uma tabela com apenas 1 comando SQL
Linux user
Publicado por Fábio Berbert de Paula em 06/08/2009

Login: fabio, 6483154 pontos | Blog: https://twitter.com/fabiodovol
[ Hits: 5881 ]

MySQL: Duplicando uma tabela com apenas 1 comando SQL

Duplicar uma tabela no MySQL, mantendo sua estrutura e importando os registros da tabela original, é mais fácil do que eu imaginava.

Hoje precisei fazer isso e uma rápida googlada me levou até: SQL COPY MySQL TABLE with structure and records.

Sem mais delongas, no console de seu MySQL digite a seguinte query:

CREATE TABLE novaTabela SELECT * FROM tabelaPai;

Simples assim!


Outras dicas deste autor

Leitura recomendada
   Dica Linux recomendada MySQL: Alterar diretório base de dados
   Dica Linux recomendada XAMPP para Ubuntu 10
   Dica Linux recomendada Erro 2002 (HY000) ao conectar ao MySQL
   Dica Linux recomendada Para melhorar a performance do MySQL
   Dica Linux recomendada mySQL-WorkBench no Ubuntu

Comentários
[1] Comentário enviado por julianometal em 22/03/2010 - 12:11h:

Boa dica para quando precisamos criar outra tabela a partir de uma outra copiando sua estrutura e seus registros.
Vou acrescentar aqui, se este comando fosse no Postgres só teria uma palavrinha a mais:

CREATE TABLE novaTabela AS SELECT * FROM tabelaPai;

[2] Comentário enviado por gianclaudio em 27/04/2010 - 19:10h:

Olá a todos.

Na verdade, aqui o resultado não foi exatamente o esperado.
Ele criou a tabela nova e copiou todos os registros porém não definiu a chave primária, índices nem autoincremento.
Pra resolver, quase tão fácil quanto o proposto acima:

CREATE TABLE nova_tabela LIKE tabela_antiga;
INSERT INTO nova_tabela SELECT * FROM tabela_antiga;

Deste modo, a tabela é criada fielmente com índices, autoincremento etc e todos os registros copiados.
Lembrando que o SELECT pode ter filtros normalmente, podendo selecionar os registros que irão para a nova tabela.

Abração


Contribuir com comentário


  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Responsável pelo site: Fábio Berbert de Paula - Conteúdo distribuído sob licença GNU FDL
Site hospedado por:

Viva o Linux

A maior comunidade Linux da América Latina! Artigos, dicas, tutoriais, fórum, scripts e muito mais. Ideal para quem busca auto-ajuda em Linux.