Atualizado em 25 de setembro de 2026.

Banco de dados é tema central nos concursos para cargos de tecnologia da informação, como analistas de TI de tribunais, bancos, secretarias e estatais, e aparece também em provas de informática mais aprofundadas e em carreiras de controle e gestão que cobram análise de dados. As questões costumam tratar do modelo relacional, das chaves, da normalização e dos comandos SQL, além de conceitos modernos, como NoSQL e Big Data. Este guia resume os pontos mais cobrados. A visão geral de informática está no índice de Informática.

Conceitos básicos

Um banco de dados é uma coleção organizada de dados relacionados, armazenados de forma a permitir o acesso, a consulta e a atualização eficientes. O sistema gerenciador de banco de dados, o SGBD, é o software que controla o banco, cuidando do armazenamento, da segurança, da integridade e do acesso concorrente. São exemplos de SGBDs relacionais o PostgreSQL, o MySQL, o Oracle e o SQL Server. O dado é o registro bruto; a informação é o dado processado e com significado.

O modelo relacional

No modelo relacional, os dados são organizados em tabelas, também chamadas de relações, formadas por linhas, também chamadas de tuplas ou registros, e colunas, também chamadas de atributos ou campos. Cada tabela representa um tipo de entidade, como clientes ou pedidos.

  • Chave primária: atributo ou conjunto de atributos que identifica de forma única cada linha da tabela; não pode ser nula nem repetida.
  • Chave candidata: qualquer atributo que poderia ser escolhido como chave primária.
  • Chave estrangeira: atributo que referencia a chave primária de outra tabela, criando o relacionamento entre elas e garantindo a integridade referencial: não se pode, por exemplo, registrar um pedido para um cliente inexistente.

Modelagem de dados

O projeto de um banco costuma passar por três níveis: o modelo conceitual, independente de tecnologia, geralmente representado pelo diagrama entidade-relacionamento, com entidades, atributos e relacionamentos; o modelo lógico, que traduz o conceitual para o modelo relacional, com tabelas e chaves; e o modelo físico, que define como os dados serão armazenados em um SGBD específico. A cardinalidade indica quantas ocorrências de uma entidade se relacionam com outra: um para um, um para muitos ou muitos para muitos. Os relacionamentos de muitos para muitos costumam ser resolvidos com uma tabela associativa.

Normalização

A normalização organiza as tabelas para reduzir a redundância e evitar anomalias de inserção, atualização e exclusão:

  • Primeira forma normal: todos os atributos são atômicos, ou seja, não há grupos repetitivos nem atributos multivalorados em uma mesma célula.
  • Segunda forma normal: está na primeira forma normal e todos os atributos não chave dependem da chave primária inteira, e não de apenas parte dela.
  • Terceira forma normal: está na segunda forma normal e não há dependência transitiva, ou seja, atributos não chave não dependem de outros atributos não chave.
Normalizar nem sempre é melhor: a normalização reduz redundâncias, mas pode exigir muitas junções nas consultas. Em ambientes analíticos, como os data warehouses, é comum a desnormalização para ganhar desempenho nas leituras. As bancas costumam cobrar esse equilíbrio entre integridade e desempenho.

A linguagem SQL

GrupoFinalidadeComandos
DDLDefinição da estruturaCREATE, ALTER, DROP, TRUNCATE
DMLManipulação dos dadosSELECT, INSERT, UPDATE, DELETE
DCLControle de acessoGRANT, REVOKE
TransaçãoControle das transaçõesCOMMIT, ROLLBACK

Uma consulta típica tem a forma: SELECT nome, nota FROM candidatos WHERE nota >= 70 ORDER BY nota DESC;, que seleciona o nome e a nota dos candidatos com nota igual ou superior a 70, em ordem decrescente de nota. As cláusulas mais cobradas são WHERE, que filtra linhas; GROUP BY, que agrupa; HAVING, que filtra grupos; ORDER BY, que ordena; e JOIN, que combina tabelas, nas formas INNER, LEFT e RIGHT. As funções de agregação mais comuns são COUNT, SUM, AVG, MIN e MAX.

DELETE, TRUNCATE e DROP

O DELETE remove linhas de uma tabela, podendo usar WHERE para escolher quais, e pode ser desfeito por ROLLBACK em uma transação. O TRUNCATE remove todas as linhas de uma vez, mantendo a estrutura da tabela. O DROP remove a própria tabela, com a estrutura e os dados. A diferença entre os três é uma das mais cobradas.

Transações e propriedades ACID

Uma transação é um conjunto de operações tratado como uma unidade. As propriedades ACID garantem a confiabilidade: atomicidade, em que a transação é executada por inteiro ou não é executada; consistência, em que o banco passa de um estado válido para outro; isolamento, em que transações simultâneas não interferem umas nas outras; e durabilidade, em que os dados confirmados permanecem mesmo em caso de falha.

NoSQL, data warehouse e Big Data

  • NoSQL: bancos não relacionais, projetados para grandes volumes e flexibilidade, nos modelos de documentos, chave-valor, colunar e grafos.
  • OLTP e OLAP: sistemas transacionais, voltados ao registro das operações do dia a dia, e sistemas analíticos, voltados a consultas e análises.
  • Data warehouse: repositório de dados integrados e históricos, usado para análises e inteligência de negócios, alimentado por processos de extração, transformação e carga.
  • Big Data: conjuntos de dados caracterizados por volume, velocidade e variedade, aos quais se acrescentam, com frequência, veracidade e valor.
  • Mineração de dados: descoberta de padrões em grandes bases, tema ligado ao guia de inteligência artificial.

Exemplo de junção

Para listar o nome de cada cliente com o número dos seus pedidos, combina-se a tabela de clientes com a de pedidos pela chave: SELECT c.nome, p.numero FROM clientes c INNER JOIN pedidos p ON p.cliente_id = c.id;. O INNER JOIN retorna apenas os clientes que têm pedidos; o LEFT JOIN retornaria todos os clientes, com os campos de pedido vazios para quem não tem pedidos.

Visões, índices, gatilhos e procedimentos

  • Visão, ou view: tabela virtual, definida por uma consulta, que simplifica o acesso e pode restringir o que cada usuário vê.
  • Índice: estrutura que acelera as consultas sobre determinadas colunas, com custo extra nas inserções e atualizações.
  • Gatilho, ou trigger: código executado automaticamente quando ocorre um evento, como a inserção de uma linha.
  • Procedimento armazenado, ou stored procedure: conjunto de comandos guardado no banco e executado quando chamado.

Segurança e proteção de dados

A segurança dos bancos de dados envolve o controle de acesso, com os comandos GRANT e REVOKE e perfis de usuários, a criptografia dos dados sensíveis, as cópias de segurança e o registro das operações para auditoria. Quando o banco armazena dados pessoais, aplicam-se as regras da Lei Geral de Proteção de Dados, como a necessidade de base legal para o tratamento e a adoção de medidas de segurança, tema do guia de LGPD.

Como estudar

Comece pelo modelo relacional, pelas chaves e pela normalização, que são a base conceitual, e depois pratique SQL escrevendo consultas simples, com WHERE, ORDER BY, GROUP BY e JOIN. Muitos concursos de TI trazem comandos para o candidato interpretar, por isso a prática faz diferença. Complete com os conceitos de NoSQL e Big Data, cada vez mais cobrados.

Para quem estuda para cargos de TI, os guias de lógica de programação, engenharia de software e governança de TI completam a base.

Exemplos de como cai

Afirmação: "A chave primária pode conter valores nulos." Errado. Deve ser única e não nula.

Afirmação: "O comando TRUNCATE remove todas as linhas da tabela, mas mantém a sua estrutura." Certo. O DROP é que remove a tabela.

Afirmação: "A cláusula HAVING filtra linhas antes do agrupamento." Errado. Quem filtra linhas é o WHERE; o HAVING filtra grupos.

Resumo para revisar antes da prova

SGBD controla o banco; tabelas com linhas e colunas; chave primária única e não nula e chave estrangeira com integridade referencial; modelos conceitual, lógico e físico, com cardinalidades; primeira, segunda e terceira formas normais; DDL, DML, DCL e comandos de transação; WHERE filtra linhas e HAVING filtra grupos; DELETE, TRUNCATE e DROP; propriedades ACID; NoSQL, OLTP e OLAP, data warehouse e os Vs do Big Data.

Perguntas frequentes

Qual a diferença entre chave primária e chave estrangeira?

A chave primária identifica de forma única cada registro de uma tabela e não pode ser nula nem repetida. A chave estrangeira é um campo que faz referência à chave primária de outra tabela, garantindo a integridade referencial entre elas.

Quais são os grupos de comandos SQL?

Os mais cobrados são a DDL, de definição, com CREATE, ALTER e DROP; a DML, de manipulação, com SELECT, INSERT, UPDATE e DELETE; a DCL, de controle, com GRANT e REVOKE; e os comandos de transação, como COMMIT e ROLLBACK.

O que significam as propriedades ACID?

Atomicidade, consistência, isolamento e durabilidade: as garantias de que as transações em um banco de dados são executadas de forma confiável, por inteiro ou não executadas, mantendo o banco consistente e preservando os dados confirmados.

SOS Concursos
Equipe SOS Concursos

Conteúdo produzido e revisado pela equipe editorial da SOS Concursos, que acompanha concursos públicos desde 2006. Cada dado deste artigo foi conferido nas fontes listadas acima. Conheça nossa política editorial ou envie uma correção para contato@sosconcursos.com.br.