-
The DDL statements are:
ALTER ... (All statements beginning with ALTER, except ALTER SESSION and ALTER SYSTEM—see "Session Control Statements" and "System Control Statement")
ANALYZE
ASSOCIATE STATISTICS
AUDIT
COMMENT
CREATE ... (All statements beginning with CREATE)
DISASSOCIATE STATISTICS
DROP ... (All statements beginning with DROP)
FLASHBACK ... (All statements beginning with FLASHBACK)
GRANT
NOAUDIT
PURGE
RENAME
REVOKE
TRUNCATE
https://docs.oracle.com/database/121/SQLRF/statements_1001.htm#SQLRF30042
Gabarito: a)
-
GRANT e REVOKE não são DCL?
Atualizado 08/01/18
Questão anulada.
-
DDL - Linguagem de Definição de dados
CREATE, ALTER, DROP, TRUNCATE usados para manipular o banco.
DML - Linguagem de Manipulação de dados
SELECT, INSERT, UPDATE, DELETE, usado para manipular dados nas tabelas.
DCL - Linguagem de controle de dados
GRANT, REVOKE usado para atribuir ou remover privilégios
-
Justificativa para anulação da questão:
Além da opção preliminarmente apontada como gabarito, a opção em que consta “dispara TRIGGER” também está correta
-
TRUNCATE TABLE cannot activate a trigger because the operation does not log individual row deletions. For more information, see CREATE TRIGGER (Transact-SQL).
fonte: https://stackoverflow.com/questions/2234223/sql-trigger-on-truncate
-
Só completando o comentario do Harold Finch, pelo que li SELECT seria DQL: DATA QUERY LANGUAGE, utilizado para realizar consultas.
-
Sobre o comentário: "TRUNCATE TABLE cannot activate a trigger because the operation does not log individual row deletions. For more information, see CREATE TRIGGER (Transact-SQL)."
Lembrem-se que não é necessário uma ação linha a linha para disparar a trigger!