Questão de Banco de Dados — SQL — Avança SP 2023
- Código
- qq830253
- Banca
- Avança SP
- Órgão
- Câmara Municipal de Taboão da Serra - SP
- Ano
- 2023
- Nível
- Superior
- Cargo
- Analista de Tecnologia da Informação
- ADQL.
- BDCL.
- CDDL.
- DDBL.
- EDLL.
GabaritoC — DDL.
Gabarito: letra C. CREATE e ALTER são comandos da DDL (Data Definition Language), a sublinguagem do SQL responsável pela definição e estruturação dos objetos do banco de dados, como tabelas, índices e visões. A distinção central está no que cada grupo faz: a DDL define a estrutura, enquanto a DML manipula os dados e a DCL controla o acesso.
A linguagem SQL (Structured Query Language) é a linguagem padrão para acesso e manipulação de bancos de dados relacionais. Ela é declarativa, ou seja, o usuário especifica o que deseja obter, sem precisar informar como o banco deve executar a operação. Para organizar essa amplitude de funcionalidades, a SQL é dividida em sublinguagens, cada uma com um papel específico. A DDL (Data Definition Language) é o grupo que trata da definição de dados: são os comandos que criam, alteram e removem a estrutura dos objetos do banco (tabelas, índices, visões, bancos de dados). Os comandos clássicos da DDL são CREATE, ALTER, DROP e TRUNCATE.
A DML (Data Manipulation Language) é o grupo que manipula os dados dentro das tabelas, com os comandos INSERT, UPDATE, DELETE e, em algumas classificações, o SELECT. A DQL (Data Query Language) é um subgrupo dedicado exclusivamente à consulta, tendo o SELECT como seu único comando. A DCL (Data Control Language) gerencia as permissões de acesso, com os comandos GRANT e REVOKE. Por fim, a DTL (Data Transaction Language) trata do controle de transações, com os comandos COMMIT, ROLLBACK, BEGIN e SAVEPOINT.
Para fixar, imagine que você está construindo um prédio: a DDL é a arquitetura (define as plantas, as paredes, os cômodos), a DML é a mudança (coloca e retira móveis), a DCL é a segurança (quem tem a chave de cada porta) e a DTL é o gerenciamento da obra (quando cada etapa é concluída e registrada). CREATE e ALTER são comandos de arquitetura: o primeiro cria uma nova estrutura (CREATE TABLE, CREATE INDEX), e o segundo modifica uma estrutura existente (ALTER TABLE, ALTER INDEX).
A pegadinha desta questão está nas alternativas D e E: DBL e DLL não são sublinguagens do SQL. DBL pode ser confundido com "DataBase Language", mas não é um termo técnico consagrado; DLL é a sigla de Dynamic Link Library, um conceito de sistemas operacionais, totalmente fora do contexto de banco de dados. A banca explora exatamente essa confusão de siglas para induzir o candidato ao erro.
Guarde a fronteira entre definir estrutura (DDL) e manipular dados (DML): é nela que as alternativas se dividem. CREATE e ALTER mexem na estrutura, logo pertencem à DDL.
A DQL (Data Query Language) é a sublinguagem de consulta, tendo o SELECT como seu único comando. CREATE e ALTER não realizam consultas; eles definem ou alteram a estrutura do banco. A banca troca o grupo de definição pelo de consulta, uma confusão comum para quem não domina a classificação.
A DCL (Data Control Language) é a sublinguagem de controle de acesso, com os comandos GRANT e REVOKE (e, em alguns SGBDs, DENY). CREATE e ALTER não lidam com permissões de usuários; eles lidam com a estrutura dos objetos. A banca troca o grupo de definição pelo de controle de segurança.
A DDL (Data Definition Language) é exatamente o grupo que define a estrutura dos objetos do banco de dados. CREATE cria novos objetos (tabelas, índices, visões, bancos de dados) e ALTER modifica a estrutura de objetos existentes (adicionar, remover ou alterar colunas de uma tabela). Os comandos clássicos da DDL são CREATE, ALTER, DROP e TRUNCATE.
DBL não é uma sublinguagem reconhecida do SQL. A sigla pode até sugerir "DataBase Language", mas não existe tal grupo na classificação padrão. A banca inventa uma sigla para confundir o candidato que não conhece a nomenclatura correta.
DLL é a sigla de Dynamic Link Library, um conceito de sistemas operacionais (bibliotecas de vínculo dinâmico), totalmente fora do contexto de banco de dados. A banca usa uma sigla conhecida de outra área da computação para testar se o candidato sabe diferenciar os conceitos.
A banca aposta na confusão de siglas. DBL e DLL parecem plausíveis, mas não são sublinguagens do SQL. DLL, em especial, é um termo de sistemas operacionais — se você viu "DLL" e pensou em Dynamic Link Library, está no caminho certo para eliminá-la. A chave é memorizar os grupos reais: DDL (estrutura), DML (dados), DQL (consulta), DCL (acesso) e DTL (transações).
Para não errar mais, monte um mapa mental com os comandos de cada grupo. A tabela abaixo resume tudo que você precisa saber:
Sublinguagem | Função | Comandos principais |
|---|---|---|
DDL | Definir estrutura | CREATE, ALTER, DROP, TRUNCATE |
DML | Manipular dados | INSERT, UPDATE, DELETE |
DQL | Consultar dados | SELECT |
DCL | Controlar acesso | GRANT, REVOKE |
DTL | Controlar transações | COMMIT, ROLLBACK, BEGIN, SAVEPOINT |
Gabarito: letra C
Link permanente: /questoes/qq830253