Pular para o conteúdo principal

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

Banco de DadosBanco de Dados
Código
qq890114
Banca
FUNDATEC
Órgão
BRDE
Ano
2023
Nível
Superior
Cargo
Analista de Sistemas - Administração de Banco de Dados
Imagine que em um banco de dados ORACLE existe um usuário USUARIO1 e uma tabela de nome PROJETOS. Considere que o DBA emitiu o seguinte comando SQL nesse banco de dados:GRANT ALL PRIVILEGES ON PROJETOS TO USUARIO1;Analise as assertivas abaixo, sobre os privilégios concedidos a USUARIO1 com esse comando, assinalando V, se verdadeiras, ou F, se falsas.( ) USUARIO1 pode remover tuplas da tabela PROJETOS.( ) USUARIO1 pode conceder a outros usuários um ou mais privilégios recebidos sobre a tabela PROJETOS através de comandos GRANT.( ) USUARIO1 pode definir um gatilho sobre a tabela PROJETOS.A ordem correta de preenchimento dos parênteses, de cima para baixo, é:
  1. AV – V – V.
  2. BF – V – F.
  3. CV – F – F.
  4. DF – F – V.
  5. EV – F – V.
Revelar gabarito e comentário

GabaritoE — V – F – V.

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”.

Gerenciamento de Privilégios no Oracle – GRANT ALL PRIVILEGES

Gabarito: letra E (V – F – V). O comando GRANT ALL PRIVILEGES ON PROJETOS TO USUARIO1 concede ao usuário todos os privilégios de objeto disponíveis sobre a tabela PROJETOS, incluindo DELETE e ALTER (que permite criar gatilhos). No entanto, não inclui a cláusula WITH GRANT OPTION, portanto USUARIO1 não pode repassar esses privilégios a outros usuários.

NÃO CAIA NESSA!

A banca explora a confusão entre possuir um privilégio e poder concedê-lo a terceiros. O candidato pode achar que, por ter todos os privilégios, o usuário automaticamente pode repassá-los, mas isso só é possível se o GRANT original contiver a opção WITH GRANT OPTION.

Assertiva

Afirmação

V/F

Justificativa

1

USUARIO1 pode remover tuplas da tabela PROJETOS.

V

ALL PRIVILEGES inclui o privilégio DELETE, que permite excluir registros.

2

USUARIO1 pode conceder a outros usuários um ou mais privilégios recebidos sobre a tabela PROJETOS através de comandos GRANT.

F

Para repassar privilégios, é necessária a cláusula WITH GRANT OPTION, que não foi incluída no comando.

3

USUARIO1 pode definir um gatilho sobre a tabela PROJETOS.

V

ALL PRIVILEGES inclui ALTER e/ou TRIGGER, permitindo criar gatilhos na tabela.

Assertiva 1 — ✅ Verdadeira

"USUARIO1 pode remover tuplas da tabela PROJETOS."

ALL PRIVILEGES inclui o privilégio DELETE, que permite excluir registros (tuplas) da tabela. Portanto, a afirmação está correta.

Assertiva 2 — ❌ Falsa

"USUARIO1 pode conceder a outros usuários um ou mais privilégios recebidos sobre a tabela PROJETOS através de comandos GRANT."

Para que o usuário possa repassar privilégios, é necessário que o comando GRANT original inclua a cláusula WITH GRANT OPTION. O enunciado não a menciona, logo USUARIO1 não tem essa permissão. Essa é uma pegadinha clássica: confundir a titularidade do privilégio com a capacidade de delegá-lo.

Assertiva 3 — ✅ Verdadeira

"USUARIO1 pode definir um gatilho sobre a tabela PROJETOS."

No Oracle, para criar um trigger em uma tabela, o usuário precisa do privilégio TRIGGER sobre a tabela ou do privilégio ALTER. O comando ALL PRIVILEGES inclui tanto ALTER quanto TRIGGER (embora a inclusão de TRIGGER varie conforme a versão, a maioria das bancas considera que ALL PRIVILEGES abrange a capacidade de criar triggers). Assim, USUARIO1 pode definir gatilhos na tabela PROJETOS.

Conclusão: São verdadeiras as assertivas 1 e 3, e falsa a assertiva 2. A sequência correta é V – F – V, que corresponde à alternativa E.

Gabarito: letra E.

Link permanente: /questoes/qq890114