Lista de exercícios de Bases de dados e SQL com respostas
Lista de exercícios de Bases de dados e SQL grátis para imprimir: 8 exercícios do nível fácil ao nível de prova, com gabarito. Imprima ou salve como PDF.
Para professores: pode imprimir, copiar e usar em aula gratuitamente. Cada nova folha tem novos valores e o seu próprio gabarito. Agradecemos um link para o ExamProblems na página da sua disciplina.
Nome: ____________________ Data: ____________
1.Fácil
No modelo relacional, como se chama uma linha de uma tabela?
AAtributo
BDomínio
CEsquema
DTupla
2.Fácil
O que COMMIT faz numa transação?
ABloqueia o banco de dados inteiro
BCria uma nova tabela
CTorna permanentes todas as alterações da transação
DDesfaz todas as alterações feitas desde o início da transação
3.Fácil
GRANT e REVOKE pertencem a que parte do SQL?
ALinguagem de definição de dados (DDL)
BLinguagem de manipulação de dados (DML)
CLinguagem de controle de dados (DCL)
DLinguagem de consulta de dados (DQL)
4.Média
Por que SELECT price * 2 AS double_price FROM t WHERE double_price > 10 falha na maioria dos bancos de dados?
AWHERE é avaliado antes da lista do SELECT, então o alias ainda não existe
BWHERE só pode comparar colunas de texto
CAliases não podem conter sublinhado
DNão se permite aritmética na lista do SELECT
5.Média
O que é uma leitura suja (dirty read)?
ALer dados sem cláusula WHERE
BLer dados gravados por outra transação que ainda não foi confirmada
CLer a mesma linha duas vezes e obter o mesmo valor
DLer dados de um disco corrompido
6.Média
Qual consulta retorna o maior salário de cada departamento?
ASELECT MAX(dept), salary FROM emp GROUP BY salary
BSELECT dept, MAX(salary) FROM emp ORDER BY dept
CSELECT dept, salary FROM emp WHERE salary = MAX(salary)
DSELECT dept, MAX(salary) FROM emp GROUP BY dept
7.Difícil
Por que NATURAL JOIN é considerado arriscado em consultas de produção?
AEle ignora as chaves primárias e estrangeiras e mantém só as linhas NULL
BEle sempre retorna um produto cartesiano
CEle junta por todas as colunas com o mesmo nome, então uma coluna nova pode mudar o resultado sem aviso
DNenhum banco de dados o suporta
8.Difícil
Um banco de dados de relatórios copia os nomes dos clientes para a tabela de pedidos para evitar joins. Qual é o principal custo dessa desnormalização?
AO banco de dados não consegue mais usar índices
BAs consultas na tabela de pedidos ficam mais lentas
CAs chaves primárias deixam de poder ser usadas
DAs cópias redundantes precisam ser mantidas consistentes sempre que os dados do cliente mudam
Gabarito
1. D · Tupla
2. C · Torna permanentes todas as alterações da transação
3. C · Linguagem de controle de dados (DCL)
4. A · WHERE é avaliado antes da lista do SELECT, então o alias ainda não existe
5. B · Ler dados gravados por outra transação que ainda não foi confirmada
6. D · SELECT dept, MAX(salary) FROM emp GROUP BY dept
7. C · Ele junta por todas as colunas com o mesmo nome, então uma coluna nova pode mudar o resultado sem aviso
8. D · As cópias redundantes precisam ser mantidas consistentes sempre que os dados do cliente mudam
Soluções completas passo a passo: pratique este tópico em examproblems.com.