Lista de Desafios de Fixação e Gabaritos (20 Capítulos)
Estes desafios espelham exatamente o "🔥 Desafio de Fixação" apresentado ao final de cada capítulo do curso de Banco de Dados Relacional & SQL com Access. Eles servem como consulta rápida para o professor ou como material de aprofundamento para alunos que concluem as práticas de laboratório antes do tempo previsto.
🧱 Módulo 1: Fundamentos & Modelagem Relacional (Cap. 01 a 04)
Capítulo 01 - Auditoria de Inconsistências na Planilha da Portaria
- Enunciado: Identifique e documente três falhas graves de consistência na planilha importada da portaria (
Portaria_Bruta.xlsx) que justificam a migração para o Microsoft Access: duplicidade de placas, divergência no nome de clientes e ausência de identificador numérico único. - Gabarito:
Capítulo 02 - Modelagem Defensiva da Tabela de Motoristas
- Enunciado: Crie a tabela
tbl_Motoristasno Modo Design do Access com os seguintes campos:ID_Motorista(Autonumeração, PK),Nome_Completo(Texto Curto, tamanho 80, Requerido),CPF(Texto Curto, tamanho 14, Requerido, Indexado sem duplicação) eData_Admissao(Data/Hora, formato Data Abreviada, Valor Padrão=Data()). - Gabarito (Definição no Modo Design):
Capítulo 03 - Regra de Validação para Capacidade Máxima de Carga
- Enunciado: Na tabela
tbl_Veiculos, adicione uma Regra de Validação no campoCapacidade_Kgpara permitir apenas valores estritamente positivos e menores ou iguais a 45.000 kg (capacidade limite de bitrem rodoviário). Adicione uma mensagem de texto de validação personalizada. - Gabarito:
Capítulo 04 - Normalização de Ordem de Despacho (1FN a 3FN)
- Enunciado: Uma planilha de fretes contém os campos:
CodFrete, Data, NomeCliente, CNPJ, CidadeCliente, PlacaVeiculo, ModeloVeiculo, CapacidadeVeiculo, ValorFrete. Demonstre a aplicação da 3ª Forma Normal (3FN), dividindo essa estrutura em três tabelas relacionais com suas respectivas chaves primárias e estrangeiras. - Gabarito:
⚙️ Módulo 2: Relacionamentos, Integridade & Pesquisa (Cap. 05 a 08)
Capítulo 05 - Estabelecendo Integridade Referencial 1:N
- Enunciado: Na Janela de Relações do Access, conecte a tabela
tbl_Clientesà tabelatbl_OrdensFreteatravés do campoID_Cliente. Ative a opção “Exigir Integridade Referencial”. Descreva o que acontece se o operador tentar gravar uma ordem informando umID_Cliente = 9999inexistente. - Gabarito:
Capítulo 06 - Proteção contra Exclusão Acidental de Veículos da Frota
- Enunciado: Na relação entre
tbl_Veiculosetbl_OrdensFrete, justifique tecnicamente por que a opção “Propagar Exclusão dos Registros Relacionados” (Exclusão em Cascata) DEVE permanecer DESMARCADA em um ambiente de auditoria e conformidade fiscal. - Gabarito:
Capítulo 07 - Modelagem de Tabela Associativa N:M para Itens de Carga
- Enunciado: Construa a tabela associativa
tbl_ItensCargapara suportar a relação N:M entretbl_OrdensFreteetbl_Mercadorias. Defina a chave primária composta por dois campos e adicione os atributos do fato:Quantidade_VolumeseValor_Declarado. - Gabarito:
Capítulo 08 - Otimização com Índice Único para Chave de Acesso NF-e
- Enunciado: Configure o campo
Chave_NFe(Texto Curto, 44 dígitos) na tabelatbl_DocumentosFiscaiscom um Índice Único (Duplicação Não Autorizada). Explique o benefício de busca quando a transportadora acumular mais de 100.000 entregas. - Gabarito:
🔍 Módulo 3: Linguagem SQL Corporativa (Cap. 09 a 12)
Capítulo 09 - Consulta SQL Canônica de Cargas Valiosas
- Enunciado: Escreva uma consulta SQL para listar o número da ordem (
ID_OrdemFrete), data da emissão (Data_Emissao) e o valor do frete (Valor_Frete) da tabelatbl_OrdensFrete, apenas para transportes com valor superior a R$ 25.000,00 e status igual a'Em Trânsito'. - Gabarito:
Capítulo 10 - Consulta SQL com Filtros BETWEEN, LIKE e Ordenação
- Enunciado: Escreva uma consulta SQL que exiba o nome do cliente (
Nome_Cliente), cidade (Cidade) e valor da carga (Valor_Carga). Filtre clientes cujo nome inicie com a letra'S'ou'A', com valor de carga entre R$ 10.000,00 e R$ 50.000,00, ordenando o resultado pelo valor de carga em ordem decrescente. - Gabarito:
Capítulo 11 - Relatório SQL Unificado com INNER JOIN Multi-Tabelas
- Enunciado: Construa uma consulta SQL cruzando
tbl_OrdensFrete,tbl_Clientesetbl_Motoristas. Exiba oID_OrdemFrete, oNome_Cliente, oNome_Motoristae oValor_Frete. - Gabarito:
Capítulo 12 - Indicadores de Faturamento por Filial com GROUP BY e HAVING
- Enunciado: Crie uma consulta SQL agrupada por
UF_Destinoque conte a quantidade de fretes emitidos (Qtd_Viagens), calcule o somatório total faturado (Faturamento_Total) e o frete médio (Ticket_Medio). Mostre apenas os estados que acumularam faturamento superior a R$ 100.000,00. - Gabarito:
🖥️ Módulo 4: Formulários & Relatórios Gerenciais (Cap. 13 a 16)
Capítulo 13 - Formulário de Cadastro com Validação Visual e Navegação
- Enunciado: No formulário
frm_CadastroClientes, adicione botões de comando da categoria Operações de Registro: “Salvar Registro”, “Adicionar Novo Registro” e “Excluir Registro”. Configure a propriedade “Separadores de Registro” como ‘Não’ e “Barras de Rolagem” como ‘Somente Vertical’. - Gabarito:
Capítulo 14 - Subformulário Mestre-Detalhes com Totalizador Dinâmico
- Enunciado: Na tela de faturamento de fretes, vincule o subformulário
sub_ItensCargaao formulário mestrefrm_OrdemFreteusando os camposID_OrdemFrete. Adicione uma caixa de texto no rodapé do subformulário calculando o total dos itens (=Soma([ValorTotal])) e faça o formulário mestre referenciá-la na caixatxt_TotalGeral. - Gabarito:
Capítulo 15 - Caixa de Combinação Relacional com Chave Oculta
- Enunciado: Configure uma ComboBox chamada
cbo_Veiculono formulário de expedição para selecionar veículos. A caixa deve exibir o modelo e a placa para o operador, mas deve gravar internamente o campo numéricoID_Veiculo. - Gabarito:
Capítulo 16 - Relatório Agrupado por Região com Quebra Automática
- Enunciado: Construa o relatório
rpt_FretesPorRegiaoagrupando os registros pelo campoRegiao_Entrega. Configure a seção “Cabeçalho do Grupo Regiao_Entrega” para exibir o nome da região e a seção “Rodapé do Grupo” para exibir a quantidade de fretes daquela região (=Contar([ID_OrdemFrete])) e a receita parcial (=Soma([Valor_Frete])). - Gabarito:
🚀 Módulo 5: Operações Avançadas & Projeto Integrador (Cap. 17 a 20)
Capítulo 17 - Consulta de Ação UPDATE para Reajuste Tarifário
- Enunciado: Escreva uma consulta de ação SQL para aplicar um reajuste de combustível de 5% sobre o valor do frete (
Valor_Frete = Valor_Frete * 1.05) apenas para transportes com destino à região'Nordeste'que ainda estejam com status'Agendado'. - Gabarito:
Capítulo 18 - Rotina de Fechamento com INSERT INTO e Expurgamento
- Enunciado: Escreva os dois comandos SQL necessários para o fechamento contábil: primeiro copie todos os fretes com status
'Entregue'emitidos há mais de 180 dias para a tabelatbl_HistoricoFretes; em seguida, remova esses registros da tabela operacionaltbl_OrdensFrete. - Gabarito:
Capítulo 19 - Conexão e Gerenciamento de Tabelas Vinculadas
- Enunciado: Descreva o procedimento passo a passo para utilizar o “Gerenciador de Tabelas Vinculadas” (Linked Table Manager) do Access caso o arquivo de banco de dados Back-End (
FastLog_Dados_be.accdb) seja transferido do diretórioC:\FastLog\Dadospara o servidor de rede\\servidor_matriz\bancos. - Gabarito:
Capítulo 20 - Checklist de Homologação do SIG FastLog Dados Enterprise
- Enunciado: Elabore um checklist de 5 itens de auditoria para homologar o banco de dados final antes de entregá-lo para a operação e para a integração com os scripts de automação em VBA.
- Gabarito: