SQL com MySQL do básico ao avançado

Vinicius Santana
4 min readApr 26, 2020

--

Nesta séries, vamos falar sobre a linguagem SQL e como recuperar, inserir, atualizar e excluir dados em bancos de dados.

Falaremos sobre o que sāo tabelas, relacionamentos, diferentes tipos de junções, consultas, sub-consultas, expressões regulares e muito mais.

1. Introdução
2. Instalando MySQL
2.1. Instalando MySQL com arquivo do MySQL Community
2.2. Instalando MySQL com Homebrew
3. Conectando ao MySQL com o “cliente na linha de comandos”
4. Instalando MySQL Workbench com arquivo do MySQL Community
5. Introdução ao MySQL Workbench
6. Criando nosso primeiro database
7. Escrevendo consultas para MySQL com SQL

Banco de dados

Um banco de dados, em inglês database, é uma coleção de dados armazenados em um formato que pode ser facilmente acessado.

Para que possamos criar e gerenciar databases em um computador, precisamos primeiro instalar um programa “Sistema de Gerenciamento de Banco de Dados”, em inglês “database management system”, sigla DBMS.

Uma vez instalado, podemos então nos conectar ao DBMS e enviar instruções para criar e interagir com bancos de dados.

Podemos acessar DBMSs instalados em computadores locais tanto quanto acessar DBMSs instalados em servidores remotos.

Spoiler alert: MySQL é um DBMS.

Bancos de dados Relacionais e Bancos de dados não relacionais

Existem vários sistemas de gerenciamento de banco de dados. Eles se qualificam em duas categorias, relacionais e não relacionais, também conhecidos como NoSQL.

Em bancos de dados relacionais, em inglês relational databases, nós armazenamos os dados em tabelas que são conectadas entre si através de relacionamentos, o que justifica o termo banco de dados relacionais.

Cada tabela armazena dados sobre um objeto especifico, como carro, fabricante, modelo, etc.

SQL

SQL, Linguagem de consultas estruturadas, em ingles Structured Query Language, é a linguagem que usamos para interagir com DBMSs de bancos de dados relacionais, em inglês relational database management system ou RDBMS. Veja no exemplo abaixo um exemplo de uso da linguagem.

Cada RDBMS tem suas peculiaridades quanto ao uso de SQL, mas são todas bastante similares e baseadas nas mesmas especificações. Dentro os diversos RDBMS, se destacam MySQL, Microsoft SQL Server e Oracle.

Nesta série, vamos utilizar o MySQL, que é o RDBMS ‘open-source’ mais popular do mundo.

No caso de bancos de dados não relacionais, não existem tabelas e neles usamos de coleções e documentos. Eles não entendem SQL e tem suas próprias linguagens para fazer consultas. Este assunto fica para uma outra série.

O nome é S-Q-L [ ˈɛs kjuː ˈɛl ] ou sequel [ ˈsiːkwəl ]

O nome original da linguagem, quando desenvolvida na IBM no início da década de 1970 era SEQUEL (Structured English Query Language) mas que futuramente foi modificado para SQL (Structured Query Language) devido a problemas jurídicos com a marca que já era trademark de uma companhia de aviação inglesa.

De acordo com a documentação oficial do MySQL a maneira correta de pronunciar “MySQL” é “My Ess Que Ell” e não “My sequel”, mas eles não se importam se você falar “My sequel” ou outra coisa.

Nesta séries vamos usar SQL com MySQL.

Podemos instalar o MySQL em um computador Mac usando o arquivo de instalação na página do MySQL ou usando o Homebrew. A instalação com o Homebrew precisa de pouca configuração e é a que sugiro

Glossário

RDBMS: Sistema de Gerenciamento de Banco de Dados Relacionais
MySQL: Um RDBMS open source bastante popular.
SQL: Linguagem de consultas estruturadas é a linguagem usada para escrever consultas para RDBMSs para criar e interagir com bancos de dados.
SEQUEL: Nome original da linguagem que futuramente foi mudado para SQL, ainda usado por muitos quando verbalmente referenciando a linguagem.
WORKBENCH: Cliente de MySQL + ambiente para escrevermos SQL, modelar dados, design data bases visualmente, funções administrativas e mais.
MySQL Monitor: Cliente de MySQL usado através da linha de comandos.

Conectando ao MySQL usando o Cliente de MySQL na linha de comandos

--

--