Passar para o conteúdo principal

Como criar questão do tipo SQL

Como criar uma questão de banco de dados com correção automática: enviar o banco SQLite ou escrever o script, definir código inicial e solução, e entender como a nota é calculada.

A questão de SQL avalia consulta a banco de dados com correção automática. A pessoa avaliada recebe um banco pronto, escreve a consulta em um editor e a plataforma compara o resultado dela com o resultado do gabarito.

O banco roda em SQLite, tanto no arquivo que você envia quanto no script que você escreve. Funções exclusivas de outros bancos, como MySQL, PostgreSQL ou SQL Server, não funcionam.

Como criar a questão

  1. Vá para Avaliação > Biblioteca > Criar > Questão.

  2. Selecione o formato SQL e clique em Continuar.

  3. Preencha a aba Configurações com o enunciado e as regras da questão.

  4. Monte o banco de dados no cartão Escolha o modelo de Configuração.

  5. Escreva o Código inicial e a Solução, e execute para conferir o resultado.

  6. Salve a questão.

Aba Configurações

É aqui que a questão ganha enunciado e regras:

  • Idioma principal: português, inglês ou espanhol.

  • Título e Descrição: o enunciado que a pessoa avaliada lê. Descreva o que a consulta deve devolver, quais colunas são esperadas e em qual ordem.

  • Duração: tempo disponível para responder.

  • Nível e Peso: dificuldade e relevância da questão dentro da avaliação.

  • Limites da nota (%): piso e teto do percentual da questão.

  • Pontuação parcial: define se a resposta precisa bater 100% com o gabarito ou se vale nota proporcional.

  • Habilidades, Tipo e Cargo/categoria: classificação usada nos filtros da Biblioteca.

  • Orientações para revisão: Objetivo da questão e Como avaliar, usados pela equipe de revisão.

Na aba Apresentação você pode ativar o Vídeo e escrever a Explicação da apresentação. Com isso, a pessoa grava um vídeo explicando a consulta depois de respondê-la.

Como montar o banco de dados

No cartão Escolha o modelo de Configuração, escolha o Formato:

  • Arquivo: envie um banco SQLite pronto, com extensão .sqlite ou .sqlite3, de até 10 MB e com pelo menos uma tabela com dados. A plataforma confere extensão, tamanho, integridade do arquivo e presença de dados antes de concluir o envio.

  • Editor: escreva o script de criação do banco direto na tela, com os comandos CREATE TABLE e INSERT. O script precisa ser compatível com SQLite e tem limite de 1 MB. A validação acontece enquanto você escreve.

Os arquivos já enviados ficam disponíveis na lista e podem ser reaproveitados em outras questões de SQL, sem precisar enviar tudo de novo.

Os nomes das tabelas do banco aparecem para a pessoa avaliada junto ao enunciado, em Tabelas disponíveis. O conteúdo das colunas, porém, ela só descobre consultando, então descreva no enunciado tudo o que for necessário para escrever a consulta.

Código inicial e Solução

  • Código inicial: o texto que já aparece no editor quando a pessoa começa. Use para comentários de orientação ou para o esqueleto da consulta.

  • Solução: a consulta de referência. É o resultado dela que vira o gabarito da correção.

Execute a consulta antes de salvar. A plataforma roda o código e mostra o resultado em tabela, o que permite conferir se o gabarito devolve exatamente o que o enunciado pede.

Como funciona a correção

A correção compara o resultado da consulta da pessoa avaliada com o resultado da Solução, linha a linha. Vale observar que:

  • maiúsculas e minúsculas nos nomes das colunas são ignoradas, e a ordem das colunas não interfere;

  • a ordem das linhas importa. Sempre que a ordem for relevante, use ORDER BY na solução e deixe isso claro no enunciado;

  • quando a consulta tem mais de um comando, a comparação usa o resultado do último;

  • com a Pontuação parcial desativada, a nota é tudo ou nada: a resposta precisa ser idêntica ao gabarito;

  • com a Pontuação parcial ativada, a nota é proporcional aos campos e linhas corretos.

A nota final é calculada a partir da consulta que a pessoa deixou salva ao finalizar a questão.

O que a pessoa avaliada vê

Ela abre a questão com o enunciado e a lista de tabelas de um lado e o editor SQL do outro. Ao executar a consulta, o resultado aparece em tabela, com destaque para as linhas que diferem do esperado, as que sobram e as que faltam. Se o vídeo estiver ativado, a gravação acontece depois da resposta.

Nos resultados da avaliação, você vê a consulta enviada, a nota e o vídeo, quando houver.

Dicas para uma boa questão de SQL

  • Prefira bancos pequenos e com dados realistas. Poucas linhas facilitam respostas obtidas por tentativa e erro.

  • Cuide dos empates: se duas linhas podem trocar de lugar, acrescente um segundo critério de ordenação.

  • Diga no enunciado o nome e a ordem das colunas esperadas, ou use apelidos claros na solução.

  • Rode a solução antes de salvar e confira se o resultado é mesmo o que você quer cobrar.

  • Se a questão aceita mais de um caminho válido com resultados diferentes, considere ativar a pontuação parcial.

Perguntas frequentes

Posso usar MySQL, PostgreSQL ou SQL Server?

Não. O banco roda em SQLite, então tanto o arquivo enviado quanto o script do editor precisam ser compatíveis com SQLite. Comandos e funções exclusivos de outros bancos falham na execução.

Preciso enviar o arquivo do banco em cada questão?

Não. Os bancos já enviados ficam disponíveis na lista do campo Arquivo SQLite e podem ser reutilizados em outras questões.

Meu arquivo foi recusado no envio. O que verificar?

A validação aponta o motivo: extensão diferente de .sqlite ou .sqlite3, tamanho acima de 10 MB, arquivo corrompido ou banco sem nenhuma tabela com dados.

A correção é automática mesmo?

Sim. A nota sai da comparação entre o resultado da consulta e o resultado da solução, sem revisão manual. A revisão humana continua possível pelos resultados da avaliação, como em qualquer outra questão.

A questão aparece com o selo Beta. Posso usar?

Sim. O selo indica que o formato é recente e segue em evolução, então ele pode receber melhorias ao longo do tempo.

Respondeu à sua pergunta?