1
resposta

MINHA RESOLUÇÃO

ALTER TABLE TABELA_PROJETO
RENAME COLUMN ORCAMENTO_PROJETO TO ORCAMENTO

ALTER TABLE TABELA_PROJETO
RENAME COLUMN DATA_INICIO_PROJETO TO DATA_INICIO

ALTER TABLE TABELA_DEPENDENTES 
RENAME COLUMN TIPO_DEPENDENCIA TO TIPO

ALTER TABLE TABELA_DEPENDENTES 
RENAME COLUMN IDADE_DEPENDENTE TO IDADE
1 resposta

Olá, Adriano! Tudo bem?

Excelente resolução! Você aplicou corretamente o comando DML (Data Manipulation Language) no contexto de alteração de metadados, utilizando a sintaxe precisa do Oracle Database para renomear colunas.

Manter nomes de colunas objetivos e diretos, como ORCAMENTO em vez de ORCAMENTO_PROJETO, ajuda muito na legibilidade das futuras consultas SELECT, evitando que o código fique excessivamente longo.

Pontos de Destaque na sua Solução:

  • Sintaxe Oracle: Você utilizou corretamente a estrutura ALTER TABLE [NOME_TABELA] RENAME COLUMN [NOME_ANTIGO] TO [NOME_NOVO]. No Oracle, essa é a forma padrão e mais segura de realizar essa alteração sem perder os dados já inseridos.
  • Padronização: Ao renomear campos como IDADE_DEPENDENTE para apenas IDADE, você segue uma boa prática de modelagem onde o contexto já é dado pelo nome da tabela (TABELA_DEPENDENTES), eliminando redundâncias.
  • Organização: Executar as alterações em blocos lógicos por tabela facilita a manutenção e o rastreamento de mudanças no esquema do banco de dados.

Dica de Especialista:

Sempre que você renomear colunas em um ambiente de produção, lembre-se de que visões (views), procedimentos (procedures) ou aplicações que consultam esses nomes antigos precisarão ser atualizados, caso contrário, eles retornarão um erro de "identificador inválido".

No Oracle, você pode verificar se há objetos dependentes dessas colunas usando a tabela do sistema USER_DEPENDENCIES antes de rodar o comando.

Parabéns pelo progresso constante e pelos seus 10.8k de XP!

Espero que possa ter lhe ajudado!

Agora que você simplificou os nomes das colunas, pretende aplicar alguma restrição de verificação (CHECK CONSTRAINT), como garantir que a IDADE seja sempre maior que zero?