No SQL Server 2012, os gatilhos DDL são disparados em respos...

Próximas questões
Com base no mesmo assunto
Q356031 Banco de Dados
No SQL Server 2012, os gatilhos DDL são disparados em resposta a diversos eventos DDL. Esses eventos correspondem principalmente as instruções Transact-SQL que começam com algumas palavras-chave como
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Alternativa correta: D - GRANT e DENY.

A questão aborda o conceito de gatilhos DDL (Data Definition Language) no contexto do SQL Server 2012. Os gatilhos DDL são especiais porque não são acionados por operações de manipulação de dados, como inserção, atualização ou exclusão de registros em uma tabela (que seriam os gatilhos DML - Data Manipulation Language). Em vez disso, eles são ativados por operações de definição de dados, como a criação, alteração ou exclusão de objetos do banco de dados, bem como a concessão ou revogação de permissões.

Para resolver esta questão, você precisa entender que os gatilhos DDL reagem a instruções que modificam a estrutura do banco de dados ou as permissões de acesso aos objetos do banco. As palavras-chave GRANT e DENY são usadas para conceder e negar permissões, respectivamente, e são o tipo de operação que pode disparar um gatilho DDL.

As outras alternativas apresentam palavras-chave associadas a operações DML ou de consulta, que não ativariam gatilhos DDL:

  • INNER JOIN e ALTER TABLE: 'INNER JOIN' é usado em consultas e 'ALTER TABLE' pode ativar um gatilho DDL, mas a presença de 'INNER JOIN' torna a alternativa incorreta.
  • INSERT e DELETE: Ambos são comandos DML e acionariam gatilhos DML, não DDL.
  • UPDATE e INSERT: Novamente, são comandos DML.
  • SELECT e UNION: Usados em operações de consulta e não modificam a estrutura ou as permissões do banco de dados.

No contexto desta questão, GRANT e DENY são exemplos de instruções que podem disparar gatilhos DDL, pois estão diretamente relacionados à administração de permissões de usuários e papéis no banco de dados, refletindo mudanças nas definições de segurança e acesso aos objetos do banco.

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

Os gatilhos DDL são disparados em resposta a diversos eventos DDL (linguagem de definição de dados). Esses eventos correspondem principalmente a instruções Transact-SQL que começam com as palavras-chave CREATE, ALTER, DROP, GRANT, DENY, REVOKE ou UPDATE STATISTICS. Determinados procedimentos armazenados do sistema que executam operações do tipo DDL também podem disparar gatilhos DDL. 


Fonte: http://msdn.microsoft.com/pt-br/library/ms175941.aspx



Grant e Revoke DDL? Não seriam DCL ?

Complementando ...

A documentação do Oracle também considera os comandos (GRANT, REVOKE, ANALYSE, AUDIT ...) como DDL.

Fonte: http://docs.oracle.com/cd/B28359_01/server.111/b28286/statements_1001.htm

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo