ANC - Analista em Computação - Ênfase em Desenvolvimento Oracle PL/SQL
As permissões para acesso às estruturas e operações em um banco de dados são concedidas através do comando SQL GRANT. Considere o seguinte comando SQL:GRANT ALL PRIVILEGES ON BUSINESS TO PEOPLESobre esse comando SQL, analise as assertivas abaixo e assinale a alternativa correta.I. PEOPLE pode ser um usuário ou uma ROLE.II. O usuário poderá conceder seus privilégios sobre a tabela BUSINESS a outros usuários.III. O usuário poderá fazer operações de INSERT, UPDATE ou DELETE na tabela BUSINESS.IV. O usuário poderá criar uma TRIGGER sobre a tabela BUSINESS.
ATodas estão corretas.
BTodas estão incorretas.
CApenas II e III estão corretas.
DApenas III e IV estão corretas.
EApenas I, III e IV estão corretas.
Revelar gabarito e comentário▾
GabaritoE — Apenas I, III e IV estão corretas.
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 GRANT no SQL
Gabarito: letra E. O comando GRANT ALL PRIVILEGES ON BUSINESS TO PEOPLE concede todos os privilégios disponíveis sobre a tabela BUSINESS ao destinatário PEOPLE (que pode ser um usuário ou uma role). Dentre esses privilégios estão INSERT, UPDATE, DELETE e a capacidade de criar triggers. No entanto, não inclui o direito de repassar esses privilégios a terceiros, a menos que a cláusula WITH GRANT OPTION seja especificada — o que não ocorre no comando. Portanto, as assertivas I, III e IV estão corretas; a assertiva II está incorreta.
Item I — ✅ Correto
PEOPLE pode ser um usuário ou uma ROLE. A sintaxe do GRANT aceita como destinatário tanto um usuário individual quanto um papel (role), conforme padrão SQL e implementações comuns (Oracle, PostgreSQL, SQL Server).
Item II — ❌ Incorreto
A capacidade de conceder privilégios a outros usuários exige a cláusula WITH GRANT OPTION (ou ADMIN OPTION para roles). Como o comando GRANT ALL PRIVILEGES ON BUSINESS TO PEOPLE não a inclui, o usuário PEOPLE não pode repassar os privilégios recebidos. A assertiva está errada.
Item III — ✅ Correto
ALL PRIVILEGES abrange as operações de inserção, atualização e exclusão de dados: INSERT, UPDATE e DELETE. Logo, o usuário pode executar esses comandos na tabela BUSINESS.
Item IV — ✅ Correto
A criação de uma trigger sobre a tabela requer o privilégio TRIGGER, que está incluído em ALL PRIVILEGES nos principais SGBDR (PostgreSQL, Oracle, MySQL a partir de certa versão, etc.). Portanto, o usuário pode criar triggers em BUSINESS.
Conclusão: Corretos os itens I, III e IV. Logo, a alternativa E é o gabarito.
PEGA ESSA DICA!
Memorize que ALL PRIVILEGES concede um conjunto amplo de permissões (SELECT, INSERT, UPDATE, DELETE, REFERENCES, TRIGGER, etc.), mas não inclui automaticamente o direito de conceder essas permissões a terceiros. Para isso, é obrigatório o uso de WITH GRANT OPTION. Questões de concurso adoram trocar esses conceitos.