Questão de Banco de Dados — Sublinguagens SQL (DDL, DML, DQL, DCL e DTL) — Avança SP 2023
- Código
- qa537358
- Banca
- Avança SP
- Órgão
- Pref Americana
- Ano
- 2023
- Cargo
- Ana ( )
- ADML.
- BDCL.
- CDPL.
- DDDL.
- EDXL.
GabaritoD — DDL.
Gabarito: letra D. O comando ALTER TABLE pertence à DDL (Data Definition Language), pois é usado para modificar a estrutura de objetos do banco de dados, como tabelas, adicionando, alterando ou excluindo colunas e restrições. As demais sublinguagens tratam de manipulação de dados (DML), controle de acesso (DCL) e transações (DTL), não da definição de estrutura.
A linguagem SQL é dividida em subconjuntos, cada um com uma função específica. A DDL (Data Definition Language) é a sublinguagem responsável pela definição e alteração da estrutura dos objetos do banco de dados — tabelas, índices, visões, esquemas etc. Seus comandos principais são CREATE, ALTER e DROP, além de TRUNCATE em algumas implementações. O ALTER TABLE é justamente o comando que permite modificar a estrutura de uma tabela existente, como adicionar uma coluna, alterar o tipo de um campo ou excluir uma restrição. Por exemplo, para adicionar uma coluna "Aprovacoes" à tabela "Gurujas", usa-se ALTER TABLE Gurujas ADD Aprovacoes varchar(255);. Esse comando não mexe nos dados em si, mas na definição da tabela — por isso pertence à DDL.
Para entender por que as outras alternativas estão erradas, é preciso conhecer as demais sublinguagens. A DML (Data Manipulation Language) lida com os dados armazenados nas tabelas: INSERT, UPDATE, DELETE e, em algumas classificações, o SELECT. A DCL (Data Control Language) controla permissões de acesso, com os comandos GRANT e REVOKE. A DTL (Data Transaction Language), também chamada de TCL, gerencia transações com BEGIN, COMMIT, ROLLBACK e SAVEPOINT. Já a DQL (Data Query Language) é dedicada exclusivamente ao SELECT. As alternativas C (DPL) e E (DXL) não existem como sublinguagens padrão do SQL — são distratores inventados.
A pegadinha desta questão é justamente a confusão entre DDL e DML: muitos candidatos associam ALTER a "alterar dados" e acabam marcando DML. Mas a distinção é clara: DDL altera a estrutura (objetos), enquanto DML altera os dados dentro das tabelas. O UPDATE é o comando DML que modifica dados; o ALTER é o comando DDL que modifica a estrutura. Guarde essa fronteira: se o comando mexe na definição do objeto, é DDL; se mexe nos registros, é DML.
A seguir, a análise de cada alternativa.
Sublinguagem | Função principal | Comandos típicos |
|---|---|---|
DDL | Definir e modificar a estrutura de objetos do banco |
|
DML | Manipular dados armazenados nas tabelas |
|
DCL | Controlar permissões de acesso |
|
DTL | Gerenciar transações |
|
DQL | Consultar dados |
|
A DML (Data Manipulation Language) é a sublinguagem de manipulação de dados, com comandos como INSERT, UPDATE e DELETE. O ALTER TABLE não manipula dados, mas sim a estrutura da tabela. Quem altera dados é o UPDATE, que modifica o conteúdo de registros existentes. A banca explora exatamente essa confusão entre "alterar estrutura" e "alterar dados".
A DCL (Data Control Language) é a sublinguagem de controle de acesso, com os comandos GRANT (concede privilégios) e REVOKE (revoga privilégios). O ALTER TABLE não tem relação com permissões de usuários; ele atua na definição de objetos do banco.
Não existe uma sublinguagem padrão chamada "DPL" (Data Programming Language ou similar) no contexto de SQL. As sublinguagens reconhecidas são DDL, DML, DCL, DTL e, em algumas classificações, DQL. Essa alternativa é um distrator puro, sem correspondência real.
O ALTER TABLE é um comando da DDL (Data Definition Language), a sublinguagem responsável por definir e modificar a estrutura dos objetos do banco de dados. Os comandos típicos da DDL são CREATE (criar), ALTER (modificar) e DROP (excluir). O ALTER TABLE permite adicionar, alterar ou remover colunas e restrições de uma tabela existente, sem tocar nos dados armazenados.
Assim como "DPL", "DXL" não é uma sublinguagem padrão do SQL. Não existe tal grupo de comandos na literatura de bancos de dados. É um distrator inventado pela banca.
Gabarito: letra D — o comando ALTER TABLE pertence à DDL (Data Definition Language).
Link permanente: /questoes/qa537358