Oracle Database Alter Tabela Modificar coluna

Oracle Database Alter Tabela Modificar coluna
Os bancos de dados relacionais são alguns dos bancos de dados mais populares e influentes do mundo moderno. Eles são alguns dos bancos de dados que foram usados ​​para alimentar aplicativos simples para aplicativos complexos em nível corporativo.

Apesar de estarem no teste do tempo, os bancos de dados relacionais estão sujeitos a alterações ao longo do ciclo de vida do aplicativo. Portanto, é essencial aprender vários métodos e técnicas que você pode usar para modificar as propriedades de um determinado banco de dados em qualquer momento.

Neste artigo, aprenderemos como usar o comando alter tabela modificar para alterar a coluna de uma determinada tabela. Além disso, abordaremos como alterar várias propriedades da coluna sem recriar uma mesa.

Oracle Alter Table Modify Command

A tabela alterada Modify permite modificar uma coluna de tabela existente sem a necessidade de recriar a tabela.

A sintaxe do comando é como mostrado:

Alterar tabela tabela_name
Modificar column_name Action/Property;

O comando segue uma sintaxe simples que é fácil de entender e seguir. Começamos especificando o nome da tabela em que a coluna de destino reside.

Em seguida, especificamos a coluna que desejamos modificar, seguida pela ação ou pela propriedade da coluna que queremos atualizar.

Você também pode atualizar várias colunas em uma única consulta, como mostrado na sintaxe abaixo:

Alterar tabela tabela_name
Modificar (
column_name_1 ação/propriedade,
column_nmae_2 ação/propriedade
..
);

O Oracle Database permite especificar as seguintes ações ou propriedades:

  1. Ativar ou desativar o suporte da coluna para valores nulos.
  2. Modificar a propriedade de visibilidade da coluna.
  3. Atualize o valor padrão de uma determinada coluna.
  4. Modificar a expressão de colunas virtuais.
  5. Expandir ou encolher o tamanho de uma coluna.

Exemplo de demonstrações

Na seção subsequente, exploraremos exemplos de uso do comando alter tabela modificar em bancos de dados Oracle.

Usaremos uma tabela com valores fornecidos na seção abaixo para uniformidade. No entanto, se você tem uma tabela existente, pode usá -la para aprender a usar este comando.

Tabela de amostra e conjunto de dados

As afirmações a seguir criam a tabela de amostra e adicionam dados aleatórios:

ordens createTable
(
idNumberNotNull,
Cliente Varchar2 (50) NotNull,
order_datedate,
product_idNumber,
número de quantidade,
número de preço,
RESTRINGORDORDED_PK Chave primária (ID)
);
InsertINTO Ordens (ID, Cliente, Order_date, Product_id, Quantidade, Preço)
Valores (1, 'beatriz', data '2022-10-10 ', 4500, 45, 56);
InsertINTO Ordens (ID, Cliente, Order_date, Product_id, Quantidade, Preço)
Valores (2, 'Ali', Date'2022-10-10 ', 5400, 65, 109);
InsertINTO Ordens (ID, Cliente, Order_date, Product_id, Quantidade, Preço)
Valores (3, 'Gabriel', Date '2022-10-11 ', 6400, 405, 586);
InsertINTO Ordens (ID, Cliente, Order_date, Product_id, Quantidade, Preço)
Valores (4, 'beatriz', data '2022-10-11 ', 5800, 55, 550);
InsertINTO Ordens (ID, Cliente, Order_date, Product_id, Quantidade, Preço)
Valores (5, 'Beatriz', Date '2022-10-12 ', 4506, 46, 700);
InsertINTO Ordens (ID, Cliente, Order_date, Product_id, Quantidade, Preço)
Valores (6, 'Gabriel', Date '2022-10-11 ', 9001, 450, 5600);

A tabela resultante é como mostrado:

Exemplo 1 - Oracle Alter Coluna para permitir valores nulos

O exemplo a seguir mostra como usar o comando alter tabela modificar para alterar o suporte para valores nulos:

ALTER TABLE ORDERS MODIFICAR O CLIENTE VARCHAR2 (50);

Nesse caso, a consulta acima deve atualizar a coluna do cliente e permitir a capacidade de adicionar valores nulos.

Como demonstrado abaixo, também podemos realizar o oposto polar e impedir que uma coluna aceite valores nulos.

ALTER TABLE ORDERS MODIFICAR PRODUT_ID Número não NULL;

Nesse caso, dizemos ao Oracle para evitar valores nulos na coluna Product_id.

Exemplo 2 - Oracle Alter Tabela Modificar Visibilidade da coluna

Desde o Oracle 12C, podemos definir uma coluna como visível ou invisível. Colunas invisíveis não são acessíveis para consultas como selecionar *, descrever Table_name, etc.

Para tornar uma coluna invisível usando o comando alter tabela modificar, podemos executar:

Alter ordens de tabela modificam o preço invisível;

Isso deve mudar a visibilidade da coluna de preços. Podemos demonstrar isso selecionando todas as colunas da tabela:

Selecione * de pedidos;

Como você pode imaginar, a coluna de preços não é mostrada no resultado:

Para reverter a visibilidade da coluna, execute o comando:

Altera os pedidos de tabela modificam o preço visível;

Exemplo 3 - Oracle Alter Table Atualize o valor padrão da coluna

Vamos adicionar uma nova coluna com um valor padrão, conforme mostrado na consulta abaixo:

ALTER TABLE ORDERS Adicionar número de disponibilidade (1,0) padrão 0;

Neste exemplo, o comando acima deve adicionar uma nova coluna chamada disponibilidade de retenção de valores binários. Ele também contém um valor padrão de 0.

Se selecionarmos os valores da tabela:

Selecione * de pedidos;

A coluna de disponibilidade é preenchida com zeros como o valor padrão.

Para alterar o valor padrão com o comando alter tabela modificar, execute:
ALTER TABLE ORDERS MODIFICAR o número de disponibilidade (1,0) padrão 1;

Exemplo 4 - Oracle Alter Tabela Modificar Tamanho da coluna

Podemos expandir ou encolher o tamanho de uma determinada coluna, como mostrado no exemplo abaixo:

ALTER TABLE ORDERS MODIFICAR O CLIENTE VARCHAR2 (100);

Nesse caso, a consulta acima deve expandir o tamanho da coluna do cliente. Você pode definir um valor menor para diminuir o tamanho de uma coluna.

Observe que é bom ter em mente que a mudança de uma coluna existente afetará principalmente novos valores. As alterações podem não se aplicar aos dados já existentes.

Conclusão

Neste artigo, você descobriu o uso do comando de modificação da tabela alterada para alterar várias propriedades de uma coluna de tabela existente nos bancos de dados Oracle.