Este tutorial superará como copiar uma tabela de um banco de dados em outra tabela usando MySQL Create e Select Clauss.
Casos de uso
O primeiro caso em que precisamos copiar uma tabela é copiar dados específicos de uma tabela existente para uma nova. Por exemplo, no banco de dados de amostra de Sakila, podemos copiar informações específicas da tabela de filme para uma nova tabela chamada film_revised.
Considere a consulta abaixo para executar essa operação:
Criar banco de dados copy_tb;Depois que a consulta acima é executada, podemos visualizar os dados armazenados na tabela usando a instrução MySQL Select, conforme mostrado na saída abaixo:
mysql> selecione * Film_Revised Limit 10;Como você pode ver, podemos criar novas tabelas com informações selecionadas de tabelas existentes sem alterar os dados no banco de dados original.
OBSERVAÇÃO: Copiar uma tabela usando a tabela Criar e selecionar instruções apenas copia a tabela e seus dados. Ele não copia objetos como índices, gatilhos, restrições de chaves primárias, etc., conectado à tabela original.
Tabela de cópias + objetos
Para copiar os dados da tabela + e todos os objetos relacionados, usamos a declaração semelhante seguida pela declaração de inserção, conforme ilustrado na consulta abaixo:
Crie Table Film_copy como Sakila.filme;A consulta acima copiará tudo, desde a tabela original até a nova, incluindo índices, chaves primárias, restrições e outros objetos conectados à tabela original.
OBSERVAÇÃO: Tenha cuidado ao usar as declarações de cópia em mesas enormes, pois elas podem usar mais recursos e levar muito tempo para concluir.
Copiar tabelas de bancos de dados separados
Se você precisar copiar uma tabela de diferentes bancos de dados, poderá fazer referência ao banco de dados usando o DOT (.) notação.
Por exemplo, comece criando um novo banco de dados como:
Crie banco de dados, se não existe multi_db;Em seguida, use a sintaxe mostrada anteriormente para copiar uma tabela do banco de dados antigo para o novo. Veja a consulta abaixo:
Crie a tabela multi_db.new_tb como Sakila.filme;Isso copiará a tabela de filme da tabela do banco de dados Sakila para o novo e exibirá a saída como mostrado abaixo:
Consulta ok, 1000 linhas afetadas (0.03 seg)Você pode usar a instrução SELECT para verificar se os dados foram copiados com sucesso.
Conclusão
Este guia rápido analisou como usar o MySQL Criar tabela e selecionar instruções para copiar colunas específicas de uma tabela para uma nova tabela.
Também analisamos como copiar todos os dados, incluindo objetos associados à tabela original, para uma nova tabela.
Finalmente, discutimos como copiar tabelas de um banco de dados para outro.
Obrigado pela leitura.