Questão nº 50
Questão de Tecnologia da Informação · FCC SEGEP-MA 2018 (nº 50)
Um Programador de Sistemas realizou operações com um banco de dados relacional usando comandos dos tipos DDL, DML, DCL e DTL. Ele usou corretamente os respectivos comandos:
- A`GRANT, CALL, DELETE e INSERT.`
- B`DROP, UPDATE, REVOKE e ROLLBACK.` (alternativa correta)
- C`DELETE, COMMIT, DECLARE e GRANT.`
- D`CREATE, ROOLBACK, GRANT e SAVEPOINT.`
- E`ALTER, REVOKE, CALL e COMMIT.`
Resposta comentada
Gabarito Alternativa B
SQL (Structured Query Language) é a linguagem padrão para gerenciar bancos de dados. Seus comandos são agrupados em categorias conforme sua função: DDL (Data Definition Language) para definir a estrutura, DML (Data Manipulation Language) para manipular os dados, DCL (Data Control Language) para controlar acessos e DTL (Data Transaction Language) para gerenciar transações.
(A) Incorreta: `GRANT` (DCL), `CALL` (não é um comando padrão DDL/DML/DCL/DTL, geralmente executa procedimentos), `DELETE` (DML), `INSERT` (DML). Há dois DMLs e o `CALL` não se encaixa.
(B) Correta: `DROP` (DDL - apaga estrutura), `UPDATE` (DML - atualiza dados), `REVOKE` (DCL - revoga permissões), `ROLLBACK` (DTL - desfaz transação). Esta alternativa apresenta um comando de cada tipo, corretamente.
(C) Incorreta: `DELETE` (DML), `COMMIT` (DTL), `DECLARE` (não é um comando padrão DDL/DML/DCL/DTL, usado para declarar variáveis em blocos de código), `GRANT` (DCL). O `DECLARE` não se encaixa.
(D) Incorreta: `CREATE` (DDL), `ROLLBACK` (DTL), `GRANT` (DCL), `SAVEPOINT` (DTL). Há dois comandos DTL e nenhum DML.
(E) Incorreta: `ALTER` (DDL), `REVOKE` (DCL), `CALL` (não é um comando padrão DDL/DML/DCL/DTL), `COMMIT` (DTL). O `CALL` não se encaixa e não há comando DML. A armadilha aqui, assim como na alternativa A, é o comando `CALL`. Embora ele execute uma ação no banco de dados (chamando uma stored procedure, por exemplo), ele não é classificado diretamente como DDL, DML, DCL ou DTL no mesmo nível dos outros comandos listados, pois uma stored procedure pode conter comandos de qualquer uma dessas categorias. O aluno pode ser tentado a associá-lo a uma "manipulação" (DML), mas ele não é um comando DML por si só.
Fonte: FCC SEGEP-MA 2018 Analista Executivo - Programador de Sistemas (Caderno Tipo 1). Reproduzida para fins de estudo.