SQL: Combinando INSERT + SELECT para duplicação de registros

Publicado por Fábio Berbert de Paula em 19/01/2009

[ Hits: 49.405 ]

Blog: https://fabio.automatizando.dev

 


SQL: Combinando INSERT + SELECT para duplicação de registros



Essa semana surgiu a necessidade de duplicar um registro numa de minhas tabelas do banco de dados MySQL. A solução mais prática encontrada foi, ao invés de criar um INSERT por extenso copiando os valores do registro a ser duplicado, combinar o uso do INSERT com SELECT.

Vale lembrar que essa dica é para aqueles que já possuem uma certa experiência em comandos SQL.

Supondo que nossa tabela tenha a seguinte estrutura:

CREATE TABLE contato (
   codigo int not null auto_increment primary key,
   nome varchar(200) not null,
   email varchar(100) not null,
   telefone varchar(100),
   obs text
);

e desejo duplicar o registro que possui o email jabara@tibirica.com, o comando SQL para tal seria:

INSERT INTO contato (nome, email, telefone, obs)
   SELECT nome, email, telefone, obs FROM contato
      WHERE email='jabara@tibirica.com';


Auto-explicativo certo?

Um abraço.

Outras dicas deste autor

bc - Como passar parâmetros via linha de comando para a calculadora

Utilizando Fontes TrueType no Linux

Como criar um cronômetro em modo texto

Como aumentar ou reduzir a velocidade de um vídeo via linha de comando

Atalho Alt+F2 ou Alt+Espaço parou de funcionar no KDE Plasma [Resolvido]

Leitura recomendada

Resolver problema "Got error 127 from table handler" no MySQL

Instalando o Servidor MySQL no Linux

Migrando .DBF para MySQL

MySQL: Alterar diretório base de dados

MySQL: Erro: "mysqld dead but subsys locked" [Resolvido]

  

Comentários
[1] Comentário enviado por fabio em 15/09/2011 - 11:21h

Testando uso de captcha...



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts