Voltar para a lista de artigos Artigos
8 minutos de leitura

O que é um banco de dados SQL?

Os bancos de dados SQL têm sido usados há décadas e têm crescido em popularidade, tornando-se uma das ferramentas de gerenciamento de dados mais comuns. Eles fornecem ao usuário uma maneira eficiente de armazenar os dados e uma forma intuitiva de acessá-los ou modificá-los.

Neste artigo, vamos começar explicando o que é um banco de dados e mostrando alguns exemplos. Passaremos à forma como os bancos de dados podem ser usados para trabalhar eficientemente com grandes quantidades de dados estruturados. Depois, mostraremos alguns exemplos de diferentes tipos de bancos de dados SQL e quando utilizá-los. Não entraremos nos detalhes da escrita de consultas SQL, mas se você estiver procurando algum material de aprendizagem, um bom lugar para começar é o curso SQL para Iniciantes . Ele começa a partir de um nível de iniciante e funciona até algumas consultas mais avançadas. E inclui uma tonelada de exercícios interativos.

O que é um Banco de Dados?

Você pode estar familiarizado com o armazenamento de dados em uma planilha eletrônica, que é útil para quantidades menores de dados. Essas quantidades de dados que você normalmente armazena localmente em seu computador. As planilhas são ótimas para usuários individuais que não precisam manipular os dados em excesso. Por exemplo, tais usuários não costumam combinar dados de diferentes folhas de cálculo. Mas se você precisar trabalhar com quantidades maiores de dados de diferentes fontes, você pode precisar de funcionalidades mais avançadas.

É aqui que os bancos de dados entram em cena. Um banco de dados é um produto de software projetado para armazenar grandes quantidades de informações de uma forma altamente estruturada. Um banco de dados pode ser armazenado localmente em seu computador pessoal ou remotamente em um servidor externo. Neste último caso, você precisará usar um programa para se conectar ao servidor através de uma rede para que possa acessar os dados.

Nos bastidores, um banco de dados faz algumas coisas para facilitar sua vida. Ele gerencia eficientemente o armazenamento de grandes quantidades de dados, ou seja, de milhões a bilhões de linhas, o que não é possível nem com uma planilha de cálculo. Em um banco de dados, há verificações de consistência interna para garantir que quaisquer novos dados adicionados ao banco de dados estejam em conformidade com tipos de dados pré-definidos. Por exemplo, certas entradas podem conter apenas texto ou números.

Em projetos maiores, muitas pessoas normalmente trabalham com os mesmos dados. Um banco de dados pode gerenciar o acesso simultâneo e as modificações simultâneas de seus dados. Isto significa que várias pessoas podem usar o banco de dados ao mesmo tempo sem interferir umas com as outras. Além disso, as permissões dos usuários podem ser gerenciadas por motivos de segurança. Por exemplo, alguns usuários podem apenas ler os dados, enquanto outros também podem adicioná-los ou modificá-los.

Bases de dados relacionais

Mencionamos que os dados em um banco de dados são altamente estruturados. Mas como é estruturado exatamente? O tipo mais comum de banco de dados é conhecido como banco de dados relacional. Aqui, os dados são organizados em tabelas que contêm colunas e linhas, com uma chave única que identifica cada linha. As colunas representam diferentes variáveis (ou atributos), e as linhas são medidas (ou instâncias) dessas variáveis. Se você trabalha com planilhas, isto pode ser conceitualmente familiar a você.

Em um banco de dados relacional, os dados são normalmente armazenados em várias tabelas. Entretanto, os dados de diferentes tabelas podem ser combinados. Isto pode tornar todo o banco de dados bastante flexível.

Considere o seguinte exemplo: temos uma empresa com vários funcionários. Podemos armazenar o nome e o cargo de cada funcionário em uma tabela chamada Employee. A mesa ficaria assim:

FirstNameLastNameJobTitle
SarahWilcoxCEO
LiYangDepartment Head
EveTaylorDeveloper
LiamNelsonDeveloper

Além disso, podemos definir outra tabela chamada Job. Ele contém os salários e o horário de trabalho semanal para cada título de trabalho:

JobTitleSalaryHoursPerWeek
CEO160,00050
Department Head130,00045
Developer115,00035

Podemos armazenar estas tabelas em um banco de dados relacional, e podemos combinar informações de cada tabela para descobrir facilmente quantas horas por semana cada desenvolvedor deve trabalhar ou seu salário anual.

Cada linha tem um tipo de dado específico. As entradas na coluna JobTitle só podem conter informações de texto, enquanto a coluna Salário só pode conter um número. Se um novo desenvolvedor ingressar na empresa, basta adicionar uma linha à tabela de Empregados e saber automaticamente seu salário e quantas horas eles precisam trabalhar.

Há muito mais situações em que bancos de dados relacionais podem ser utilizados. Um banco de dados universitário, poderia ter uma tabela para todos os estudantes de um departamento, os cursos em que eles estão matriculados e as notas dos estudantes. No mesmo banco de dados poderia haver outra tabela com os nomes dos professores, os cursos que eles estão ensinando e a que horas suas palestras são realizadas. Um banco de dados relacional poderia armazenar informações para uma loja on-line, incluindo informações sobre seus clientes, informações sobre vendas e pedidos, e informações sobre produtos (ou seja, o que eles vendem).

Mas não são apenas as informações relativas a pessoas ou produtos que podem ser armazenadas em um banco de dados relacional. Os dados das séries temporais poderiam ser armazenados em tabelas; cada linha representaria um ponto diferente no tempo.

Imagine medir a temperatura a cada 10 minutos durante o dia. Seus registros poderiam ser armazenados em uma tabela; os registros da quantidade de chuvas a cada hora poderiam ser armazenados em outra tabela no mesmo banco de dados. Desta forma, as bases de dados relacionais podem ser muito flexíveis.

Bases de dados SQL

Fizemos um pequeno trabalho de base para chegar ao ponto de entender o que é um banco de dados SQL.

O termo banco de dados SQL é mais ou menos um sinônimo de banco de dados relacional. É um banco de dados com a mesma estrutura que descrevemos acima; ele é composto de uma ou muitas tabelas que contêm dados.

Os bancos de dados relacionais são chamados bancos de dados SQL porque SQL é a linguagem projetada para falar com bancos de dados relacionais. Isto significa que a linguagem SQL é usada para acessar e modificar os dados dentro de um banco de dados SQL. É por isso que a linguagem foi originalmente desenvolvida, como discutimos em nosso artigo O que é SQL?

Um banco de dados SQL é normalmente construído com SQL e projetado para funcionar de forma ideal quando a linguagem SQL é usada para gerenciar os dados dentro dela. Com um banco de dados SQL, você pode usar a sintaxe intuitiva e fácil de aprender de SQL para tirar proveito das funcionalidades avançadas do banco de dados e gerenciar grandes quantidades de dados e muitos usuários.

SQL foi desenvolvido com bancos de dados relacionais, mas hoje em dia é usado com muitas outras tecnologias de dados. Para saber mais, confira nosso artigo As tecnologias SQL são mais comuns do que você pensa.

Opções de bancos de dados SQL

Há uma série de produtos de software disponíveis que permitem criar e gerenciar um banco de dados SQL. Se você estiver trabalhando em equipe, provavelmente não será capaz de escolher com qual banco de dados você trabalha. Entretanto, saber quais opções estão disponíveis e quando elas devem ser utilizadas é importante. Em nosso artigo Para que serve o SQL?..., entramos em um pouco mais de detalhe sobre como diferentes pessoas utilizam bancos de dados SQL.

Um dos produtos mais populares disponíveis é o MySQL. Isto normalmente roda em um servidor externo, o que significa que primeiro você precisa se conectar ao servidor para começar a utilizar os dados.

O SQLite, por outro lado, é útil para projetos menores onde um banco de dados em sua máquina local é suficiente. Esta é uma boa opção para os iniciantes ganharem um pouco de experiência com bancos de dados SQL.

O SQL Server é outro sistema de gerenciamento de banco de dados muito popular. É uma solução fácil de usar que é uma boa escolha para situações com requisitos mais complexos. Entretanto, você terá que pagar para utilizá-lo.

O PostgreSQL, também conhecido como Postgres, é outra opção gratuita. Esta é uma solução muito madura e popular que pode lidar com múltiplos formatos de dados.

O último sistema de banco de dados que mencionaremos é o Oracle. É comumente usado para processamento de transações online e armazenamento de dados. Entretanto, não é particularmente amigável para iniciantes.

Hora de aprender SQL

Neste artigo, discutimos bancos de dados relacionais e como o SQL pode ser usado para trabalhar com dados armazenados em um banco de dados. Gostaríamos de encorajá-lo a dar o próximo passo e começar a aprender SQL. Para algumas dicas sobre como proceder, veja nosso artigo Como aprender SQL rapidamente. Isto pode então se tornar outra linguagem de programação para colocar em seu CV para sua próxima aplicação de trabalho. E sim, SQL é uma linguagem de programação; nós explicamos as razões pelas quais em Is SQL a Programming Language?