Pular para o conteúdo principal

Questão de Banco de Dados — Banco de Dados — FUNDATEC 2023

Banco de DadosBanco de Dados
Código
qq896734
Banca
FUNDATEC
Órgão
PROCERGS
Ano
2023
Nível
Superior
Cargo
ANC - Analista em Computação - Ênfase em Desenvolvimento Oracle PL/SQL
O comando ALTER TABLE é utilizado para alterar a estrutura de uma tabela. Assinale a alternativa correta sobre o comando ALTER TABLE.
  1. ANão é possível adicionar ou remover constraints de uma tabela usando o comando ALTER TABLE.
  2. BAtravés do comando ALTER TABLE é possível alterar o tipo de dado (domínio) de um campo (coluna) e o SGBD fará a correta conversão automática dos dados em todas as situações.
  3. CO comando ALTER TABLE faz parte da DDL da SQL e, depois de executado, não será desfeito pela execução de um comando ROLLBACK
  4. DNão é possível reduzir o tamanho de um campo através do comando ALTER TABLE
  5. EA adição de mais campos em uma tabela não pode ser feita através do comando ALTER TABLE.
Revelar gabarito e comentário

GabaritoC — O comando ALTER TABLE faz parte da DDL da SQL e, depois de executado, não será desfeito pela execução de um comando ROLLBACK

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Comando ALTER TABLE e DDL

Gabarito: letra C. O comando ALTER TABLE é um comando DDL (Data Definition Language) e, por isso, não é transacional na maioria dos SGBDs — uma vez executado, ele realiza um COMMIT implícito, não podendo ser desfeito por ROLLBACK. As demais alternativas trazem afirmações falsas sobre as restrições ou capacidades desse comando.

ALTER TABLE (DDL)
  • 1Características
    • COMMIT implícito
    • Irreversível por ROLLBACK
  • 2Operações possíveis
    • ADD / DROP coluna
    • ADD / DROP CONSTRAINT
    • MODIFY tipo/tamanho
      • Redução permitida (com restrições)
      • Conversão automática nem sempre funciona
LEVEL · soulevel.com.br

Alternativa A — ❌ Incorreta

Afirma que "não é possível adicionar ou remover constraints" via ALTER TABLE. Isso é falso: conforme o padrão SQL, o ALTER TABLE permite tanto adicionar (ADD CONSTRAINT) quanto remover (DROP CONSTRAINT) restrições de uma tabela.

Alternativa B — ❌ Incorreta

Diz que "o SGBD fará a correta conversão automática dos dados em todas as situações". O erro está na expressão "todas as situações": a conversão automática pode falhar (perda de dados, erro de tipo) e depende do SGBD e dos dados existentes. Não há garantia universal de sucesso.

NÃO CAIA NESSA!

A banca usa a expressão "em todas as situações" para generalizar indevidamente. A conversão automática nem sempre é possível ou correta — exemplo: tentar converter uma string não numérica para INTEGER causa erro.

Alternativa C — ✅ Correta ⟵ GABARITO

O ALTER TABLE é um comando da DDL, assim como CREATE e DROP. Comandos DDL em geral são confirmados automaticamente (auto-commit) e não podem ser revertidos com ROLLBACK, ao contrário dos comandos DML (INSERT, UPDATE, DELETE). Isso está de acordo com o comportamento padrão dos SGBDs relacionais.

Alternativa D — ❌ Incorreta

Afirma que "não é possível reduzir o tamanho de um campo". Na verdade, é possível sim, desde que os dados existentes não ultrapassem o novo limite e o SGBD suporte a operação (ex.: ALTER TABLE ... MODIFY coluna VARCHAR(50) de VARCHAR(100)). A redução é permitida, com restrições.

Alternativa E — ❌ Incorreta

Diz que "a adição de mais campos não pode ser feita" com ALTER TABLE. Isso é falso: o comando ALTER TABLE ... ADD coluna é a forma padrão de incluir novas colunas em uma tabela existente.


Gabarito: letra C — a única alternativa correta sobre o comando ALTER TABLE.

Link permanente: /questoes/qq896734