Criação de Apps

Banco de dados e SQL para iniciantes: o que são e como começar

Resposta rápida

Banco de dados é um sistema que guarda e organiza informações de forma estruturada, normalmente em tabelas com linhas e colunas. SQL é a linguagem usada para consultar e alterar esses dados, com comandos como SELECT para buscar, INSERT para incluir, UPDATE para alterar e DELETE para apagar.

Neste artigo
  1. O que é um banco de dados
  2. Como os dados se organizam
  3. O que é SQL
  4. E o NoSQL?
  5. Como um app usa o banco
  6. Como praticar sem complicar
  7. Plano de estudo em quatro etapas

Todo aplicativo que lembra de você tem um banco de dados por trás: a loja sabe seus pedidos, a rede social guarda suas fotos, o banco digital registra cada transação. Entender como os dados são organizados e consultados é uma das habilidades mais valorizadas em tecnologia, e a base é mais simples do que parece.

O que é um banco de dados

Um banco de dados é um sistema que armazena informações de forma organizada, para que sejam encontradas, alteradas e protegidas com rapidez e segurança. Uma planilha é uma versão simples dessa ideia, mas bancos de dados aguentam milhões de registros, vários usuários ao mesmo tempo e regras para manter tudo consistente.

O programa que gerencia o banco se chama SGBD (sistema gerenciador de banco de dados). Exemplos conhecidos são PostgreSQL, MySQL, SQLite, SQL Server e Oracle.

Como os dados se organizam

No tipo mais comum, o banco relacional, os dados ficam em tabelas. Pense em uma planilha:

  • Tabela: um conjunto de dados sobre um tema, como clientes ou pedidos.
  • Coluna (campo): um tipo de informação, como nome, e-mail ou data.
  • Linha (registro): um item completo, como os dados de um cliente.

Chave primária

Cada linha precisa de um identificador único, a chave primária. Normalmente é um número (id) que nunca se repete. Assim, dois clientes com o mesmo nome não se confundem.

Relacionamentos

Uma loja tem clientes e pedidos. Em vez de repetir os dados do cliente em todo pedido, a tabela de pedidos guarda apenas o id do cliente, uma chave estrangeira que aponta para a tabela de clientes. Isso evita repetição e erros, e permite juntar as informações quando necessário.

Tipos de dados e boas práticas

Cada coluna tem um tipo de dado: número inteiro, decimal, texto, data, verdadeiro ou falso. Escolher o tipo certo evita erros, como somar textos ou guardar uma data como se fosse uma frase. Algumas práticas simples ajudam desde o começo:

  • Dê nomes claros e padronizados às tabelas e colunas, sem espaços nem acentos.
  • Não repita a mesma informação em vários lugares. Guarde uma vez e relacione.
  • Defina o que é obrigatório e o que é único, como o e-mail de cada usuário.
  • Faça cópias de segurança (backup) regulares e teste a restauração.

O que é SQL

SQL (Structured Query Language, linguagem de consulta estruturada) é a linguagem usada para conversar com bancos relacionais. Seus comandos parecem frases em inglês. Os cinco mais importantes:

SELECT: buscar dados

Pede informações. Um exemplo: SELECT nome, email FROM clientes; traz o nome e o e-mail de todos os clientes. Para filtrar, acrescente WHERE: SELECT nome FROM clientes WHERE cidade = 'Recife';. Para ordenar, use ORDER BY, e para limitar o número de resultados, LIMIT (em bancos como PostgreSQL, MySQL e SQLite; outros usam TOP).

INSERT: incluir dados

Cria um registro novo. A estrutura é INSERT INTO, o nome da tabela, as colunas e os valores.

UPDATE: alterar dados

Modifica registros existentes. Exemplo: UPDATE clientes SET cidade = 'Salvador' WHERE id = 7;.

DELETE: apagar dados

Remove registros. Exemplo: DELETE FROM clientes WHERE id = 7;.

JOIN: juntar tabelas

Combina dados de tabelas relacionadas. Por exemplo, mostrar o nome do cliente ao lado de cada pedido, ligando as duas pela chave. É o recurso que mais confunde no início e o mais poderoso do SQL.

Funções de resumo

Com COUNT, SUM, AVG, MIN e MAX você conta, soma e tira médias. Com GROUP BY, agrupa: total de vendas por mês, número de clientes por cidade. Relatórios simples viram uma consulta de poucas linhas.

E o NoSQL?

Existem bancos que não seguem o modelo de tabelas, chamados NoSQL. Eles guardam documentos (como o MongoDB), pares de chave e valor ou grafos. Costumam ser escolhidos para dados com estrutura muito variável ou para volumes e velocidades específicos. Para quem está começando, o relacional resolve a maioria dos casos e é a base mais pedida no mercado.

Como um app usa o banco

Em geral, o usuário nunca fala direto com o banco. O fluxo é: o front-end (a tela) envia um pedido ao back-end, geralmente por uma API, e o back-end consulta o banco e devolve a resposta. Essa divisão aparece em front-end, back-end e full stack.

Segurança: o cuidado com a injeção de SQL

Quando um programa monta consultas juntando texto digitado pelo usuário, abre brechas para a chamada injeção de SQL, em que alguém coloca comandos no lugar de um dado comum. A defesa é usar consultas parametrizadas (ou um ORM, biblioteca que cuida disso), que separam o comando dos valores. Além disso, dê ao programa apenas as permissões de que ele precisa e nunca guarde senhas em texto puro.

Como praticar sem complicar

  • SQLite: um banco em um único arquivo, sem servidor. Funciona com Python e com ferramentas gráficas gratuitas de visualização.
  • Editores online de SQL: sites que permitem criar tabelas e rodar consultas no navegador, sem instalar nada.
  • Instalar PostgreSQL ou MySQL: quando quiser algo mais próximo do mundo real. Instale pelos sites oficiais.
  • Conjuntos de dados abertos: baixe uma tabela de interesse (filmes, esportes, população) e responda perguntas sobre ela com SELECT.

Se você já estuda Python para iniciantes, uma boa ideia é criar um pequeno programa que guarda tarefas em um banco SQLite.

Plano de estudo em quatro etapas

  1. Entender tabelas, chaves e relacionamentos.
  2. Dominar SELECT com WHERE, ORDER BY e LIMIT.
  3. Aprender INSERT, UPDATE e DELETE com cuidado.
  4. Treinar JOIN e GROUP BY com problemas reais.

Dedique uns 30 minutos por dia e crie suas próprias tabelas, como livros lidos, gastos do mês ou receitas. Dados que importam para você tornam o aprendizado mais gostoso.

  • SQL
  • Banco de dados
  • Programação
  • Iniciantes

Perguntas frequentes

SQL é uma linguagem de programação?

É uma linguagem de consulta, voltada a trabalhar com dados. Não serve para criar sites ou apps sozinha, mas é usada junto com linguagens como Python, JavaScript e outras.

Qual banco de dados aprender primeiro?

O SQL é muito parecido entre bancos relacionais como PostgreSQL, MySQL e SQLite. Para começar, o SQLite é simples de usar porque não exige servidor. Aprender um facilita aprender os outros.

Preciso de banco de dados em todo projeto?

Não. Sites estáticos, sem contas de usuário nem dados que mudam, não precisam. Assim que o projeto precisar guardar informações, como cadastros, pedidos ou comentários, o banco passa a ser necessário.

Leia também

Criação de Apps

Front-end, back-end e full stack: qual a diferença e qual escolher

O que faz um desenvolvedor de cada área, com a analogia do restaurante e dicas para escolher o seu caminho.

· 5 min de leitura
Criação de Apps

O que é API e para que serve, explicado sem complicação

A ideia por trás das APIs com exemplos do dia a dia, termos explicados e um primeiro teste prático.

· 5 min de leitura
Criação de Apps

Python para iniciantes: seus primeiros passos com código

Do download ao primeiro programa, com os conceitos básicos da linguagem mais indicada para começar.

· 5 min de leitura
Criação de Apps

Como estudar programação sozinho sem desistir no meio do caminho

Um método simples para aprender a programar por conta própria, com rotina, prática e apoio.

· 5 min de leitura

Deixe seu comentário