A empresa RTL, no intuito de otimizar seu banco de dados, d...
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
A alternativa correta é a C - DROP SCHEMA "PORTIFOLIO" CASCADE;. Vamos entender o porquê disso e analisar as demais alternativas.
O tema central da questão é a administração de banco de dados, mais especificamente o uso do comando DROP SCHEMA. Esse comando é utilizado para remover um esquema de banco de dados. Quando falamos em remover um esquema, estamos nos referindo à exclusão de todos os objetos que pertencem a ele, como tabelas, domínios, funções, e outros elementos. Para isso, o uso da cláusula CASCADE é essencial, pois ela indica que todos os objetos dependentes do esquema também serão removidos.
Agora, vamos justificar a escolha da alternativa correta e explicar o porquê das demais alternativas estarem incorretas:
Alternativa C - DROP SCHEMA "PORTIFOLIO" CASCADE: Esta é a alternativa correta, pois o comando DROP SCHEMA remove o esquema "PORTIFOLIO" e a cláusula CASCADE garante que todos os objetos associados ao esquema sejam excluídos, o que corresponde exatamente ao desejado pela empresa RTL.
Alternativa A - DROP SCHEMA "PORTIFOLIO" DISTINCT: Esta alternativa está incorreta porque a cláusula DISTINCT não é utilizada no comando DROP SCHEMA. DISTINCT é uma cláusula que se aplica em comandos de seleção de dados, como SELECT, para eliminar duplicatas nos resultados.
Alternativa B - DELETE SCHEMA "PORTIFOLIO" RESTRICT: Esta alternativa está errada por dois motivos. Primeiro, o comando correto para remover um esquema é DROP, não DELETE. Segundo, a cláusula RESTRICT impede a exclusão do esquema se ele contiver objetos dependentes, o que é o oposto do que se deseja.
Alternativa D - DELETE SCHEMA "PORTIFOLIO" CASCADE: Similar à alternativa B, o uso do comando DELETE é incorreto para esquemas. DELETE é utilizado para excluir linhas de uma tabela, não para remover estruturas de banco de dados como esquemas.
Alternativa E - DROP ALL SCHEMA "PORTIFOLIO": Esta alternativa está errada porque a sintaxe DROP ALL SCHEMA não é válida. O comando correto é apenas DROP SCHEMA seguido do nome do esquema e, se necessário, a cláusula CASCADE.
Gostou do comentário? Deixe sua avaliação aqui embaixo!
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
DROP SCHEMA "PORTIFOLIO" CASCADE.
O cascade serve para informar ao BD que deve tentar propagar (efeito cascata) a exclusão, excluindo tuplas que referenciam aquela que está sendo excluída. Já a opção restrict, indica que deve rejeitar a exclusão caso haja referencia.
Sintaxe:
DROP SCHEMA [ IF EXISTS ] name [, ...] [ CASCADE | RESTRICT ]
Exemplos:
1- Exclusão simples de esquema.
DROP SCHEMA TSTSCHEMA1;
2 - Exclusão apenas se o esquema existir utilizando a cláusula IF EXISTS.
DROP SCHEMA IF EXISTS TSTSCHEMA2;
3 - Exclusão de mais de um esquema ao mesmo tempo.
DROP SCHEMA TSTSCHEMA3, TSTSCHEMA4;
4 - Exclusão de esquema com cláusula RESTRICT retorna erro caso existam tabelas e/ ou outros objetos dentro do esquema. Mesmo omitida, a cláusula RESTRICT é utilizada como padrão pelo banco.
DROP SCHEMA TSTSCHEMA5 RESTRICT;
5 - Exclusão de esquema com cláusula CASCADE elimina também qualquer tabelas ou outros objetos dentro do esquema automaticamente. Deve ser utilizada com parcimônia pois pode remove dados e objetos indiscriminadamente.
DROP SCHEMA TSTSCHEMA6 CASCADE;
C) DROP SCHEMA "PORTIFOLIO" CASCADE;
C) DROP SCHEMA "PORTIFOLIO" CASCADE;
DROP Destrói Tabelas. Não apenas exclui todos os registros nas tabelas, mas também remove a definição de tabela do catálogo.
Se desejar excluir apenas os registros, mas deixar a definição de tabela, então o comando deve ser DELETE
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo