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

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

[ Hits: 50.478 ]

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

Como ajustar o brilho da tela via linha de comando

Criando um despertador usando crontab e mpg123

Como fazer diff entre duas imagens

Como executar seu código-fonte a partir do Vim

RTV - Acessando o Reddit via terminal

Leitura recomendada

Instalando o MySQL no Slackware 11 sem grilo

Exportando dados do MySQL para arquivos textos

Acelerando a velocidade de conexão das páginas do MSN-Proxy

Como alterar a base de dados padrão do MySQL

MySQL - Erro 1045: Access denied for user: 'root@localhost'

  

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