Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá pessoal eu estava com um problema em que eu precisava transferir dados de uma tabela para outra. Até ae tudo bem eu consegui achar um forma de tranferir a coluna, mas eu preciso que depois de tranferir da tabelaX para a tabelaY esse dado que eu transferi seja deletado. Se alguem tiver alguma solução me ajuda por favor.
Abaixo esta meu código funcional de transferencia para outra tabela.
SQL transferencia:
INSERT INTO tabela2 (campo1,campo2,campo3) SELECT campo1, campo2, campo3 FROM tabela1
Obrigado e espero que vocês possam me ajudar.
>
Um comando delete após o insert (forma mais simples).
Uma trigger na tabela tabela2 fazendo o delete da tabela1.
Eu ja testei a primeira forma e não foi funcional deu erro de sintaxe.(DELETE FROM tabela1 WHERE id =?)
E da forma do TRIGGER como vou dizer para ele qual dado especificamente apagar? Exemplo: Transferi o dado da tabela1 e deletar o dado que transferi.
DELETE Syntax :seta: http://dev.mysql.com/doc/refman/5.6/en/delete.html
>
DELETE FROM tabela1 WHERE id =?
DELETE tabela1 WHERE id =?
Motta acho que você esta equivocado a sintaxe do dele é "DELETE FROM tabela WHERE id=?"
Só não utilizaria o "FROM" se eu utilizasse o "TRUNCATE" pois estaria a limpar todos os dados de minha tabela e resetando seu increment.
>
DELETE Syntax :seta: http://dev.mysql.com/doc/refman/5.6/en/delete.html
Carlos Coelho esse link do "DELETE" foi para mim?
Faça 2 queries separadas:
INSERT INTO tabela2 (campo1,campo2,campo3) SELECT campo1, campo2, campo3 FROM tabela1
DELETE FROM tabela1 WHERE id = id>
Faça 2 queries separadas:
INSERT INTO tabela2 (campo1,campo2,campo3) SELECT campo1, campo2, campo3 FROM tabela1
DELETE FROM tabela1 WHERE id = id
Obrigado pela resposta Henrique mas para mim desta forma não seria funcional. Mesmo assim obrigado.
Mas eu resolvi de outra forma. como os dados vão os mesmos a unica coisa que fiz foi usar uma unica tabela, ae criei um campo
"Status" e nele teria 2 condições "condição1" e "condição2" e no meu código tratei o campo que se ele recebece a consição 2 ele mandaria
para a segunda tabela(no meu sistema). =).
Valeu. Obrigado a todos.
Sua tabela vai ficar 'suja' desse jeito.
Obrigado pela resposta Henrique mas para mim desta forma não seria funcional
Por que???
>
Sua tabela vai ficar 'suja' desse jeito.
Por que???
Por que ela vai ficar suja não entendi... Da maneira que eu fiz vai ficar suja?
O meu query ficou isso aqui.
SELECT * FROM tabela1 where campo!='Finalizado'
Motta acho que você esta equivocado a sintaxe do dele é "DELETE FROM tabela WHERE id=?"
Estava mesmo, até deletei o Post.
Sua tabela terá muitos registros, o que dificultaria por exemplo na hora da busca. Você sempre teria que fazer com a condicional.
Obrigado pela resposta Henrique mas para mim desta forma não seria funcional
Eu ainda não entendi pq não é viável...
Um comando delete após o insert (forma mais simples).
Uma trigger na tabela tabela2 fazendo o delete da tabela1.