Vamos mergulhar e aprender mais.
Tabela de amostra
Antes de mergulharmos na remoção de uma ou mais colunas de uma tabela Oracle, vamos configurar um exemplo de dados para fins de ilustração.
As declarações usadas são conforme fornecido no seguinte snippet:
Crie usuários de tabelaAdicione registros à tabela da seguinte maneira:
Insira nos usuários (First_Name, Middle_initial, Last_Name, Country) valores ('Lucy', 'K', 'Weil', 'EUA');A tabela resultante é como mostrado:
Oracle Logical Column Excluir
O primeiro e mais comum o método de remover uma coluna de uma determinada tabela é uma exclusão lógica. A coluna especificada está desativada e não pode ser acessada em uma exclusão lógica. Os exclusão lógica são muito úteis, especialmente quando trabalham em uma tabela grande, onde a remoção de uma coluna específica pode levar à privação de desempenho.
A sintaxe do comando para remover logicamente uma coluna é fornecida no seguinte:
Alterar tabela tabela_namePara remover as várias colunas, use a seguinte sintaxe:
Alterar tabel tabela_namePor exemplo, para excluir logicamente a coluna Middle_initial na tabela de exemplo anterior, podemos executar a seguinte consulta:
Alterar os usuários da tabelaO comando exige que você tenha privilégios suficientes na tabela de destino.
Oracle Physical Column Exclue
Uma exclusão física é o segundo método de remover uma coluna de uma tabela. Isso elimina a coluna da tabela.
A sintaxe é conforme fornecido no seguinte snippet:
ALTER TABLE TABLE_NAME DROP COLUNN COLUNN_NAME;Para excluir as várias colunas, execute o seguinte comando:
Alterar tabela tabela_name drop (column_1, column_2,… columnn);Por exemplo, para remover as colunas Middle_initial e Last_Name da tabela de usuários que criamos anteriormente, podemos executar a seguinte declaração fornecida:
ALTER TABLE Usuários da coluna soltar (Middle_initial, Last_Name);NOTA: Você pode reduzir os logs de desfazer que são acumulados usando a opção de ponto de verificação que permite um ponto de verificação após o número definido de colunas ser processadas.
ALTER TABLE TABLE_NAME DROP COLUNS UNUSUSADO PONTELE DE VERIFICAÇÃO 250;
Conclusão
Este artigo explorou como você pode usar o comando Oracle Alter para excluir uma coluna de tabela. No entanto, é bom ter em mente que a remoção de uma coluna pode não ser o método mais eficiente de liberar o espaço da tabela. Se você deseja recuperar o espaço da tabela, considere as outras opções, como reconstruir ou mover a mesa.