Manipulação Básica de Dados MySQL

SQLBeginner
Pratique Agora

Introdução

Neste laboratório, exploraremos as operações fundamentais de manipulação de dados no MySQL. Você aprenderá como inserir, selecionar, atualizar e excluir dados em tabelas MySQL. Essas operações, comumente conhecidas como CRUD (Create, Read, Update, Delete), formam a espinha dorsal das interações com bancos de dados. Através de exercícios práticos, você obterá experiência prática com essas operações essenciais de banco de dados e entenderá como gerenciar dados de forma eficaz em tabelas MySQL.

Inserção Básica de Dados

Nesta etapa, aprenderemos como inserir dados em tabelas MySQL usando a instrução INSERT. Começaremos com inserções simples de uma única linha e, em seguida, passaremos para inserções de várias linhas.

Primeiro, vamos conectar ao MySQL:

sudo mysql -u root

Depois de conectado, selecione o banco de dados store:

USE store;

Inserção de uma Única Linha

Vamos começar inserindo um único produto em nossa tabela products:

INSERT INTO products (name, price, description)
VALUES ('Coffee Maker', 49.99, 'A 12-cup drip coffee maker with programmable timer');

Vamos detalhar este comando:

  • INSERT INTO products: Especifica a tabela na qual estamos inserindo
  • (name, price, description): Lista as colunas para as quais estamos fornecendo valores
  • VALUES (...): Especifica os valores reais a serem inseridos

Observe que não incluímos:

  • id: Ele é auto-incrementado, então o MySQL o manipula automaticamente
  • created_at: Ele tem um valor padrão do timestamp atual

Para verificar nossa inserção, podemos selecionar os dados:

SELECT * FROM products;

Você deve ver uma saída como esta:

+----+--------------+--------+----------------------------------------------------+---------------------+
| id | name         | price  | description                                        | created_at          |
+----+--------------+--------+----------------------------------------------------+---------------------+
|  1 | Coffee Maker |  49.99 | A 12-cup drip coffee maker with programmable timer | 2024-11-07 09:12:06 |
+----+--------------+--------+----------------------------------------------------+---------------------+

Inserção de Múltiplas Linhas

Agora, vamos inserir vários produtos de uma vez. Isso é mais eficiente do que inserir linhas uma de cada vez:

INSERT INTO products (name, price, description) VALUES
    ('Toaster', 29.99, '2-slice toaster with multiple browning settings'),
    ('Blender', 79.99, 'High-speed blender for smoothies and soups'),
    ('Microwave', 129.99, '1000-watt microwave with digital controls');

Este comando segue a mesma estrutura da inserção de uma única linha, mas inclui vários conjuntos de valores separados por vírgulas.

Vamos verificar nossas inserções:

SELECT * FROM products;

Você deve ver uma saída como esta:

+----+--------------+--------+----------------------------------------------------+---------------------+
| id | name         | price  | description                                        | created_at          |
+----+--------------+--------+----------------------------------------------------+---------------------+
|  1 | Coffee Maker |  49.99 | A 12-cup drip coffee maker with programmable timer | 2024-11-07 09:12:06 |
|  2 | Toaster      |  29.99 | 2-slice toaster with multiple browning settings    | 2024-11-07 09:12:16 |
|  3 | Blender      |  79.99 | High-speed blender for smoothies and soups         | 2024-11-07 09:12:16 |
|  4 | Microwave    | 129.99 | 1000-watt microwave with digital controls          | 2024-11-07 09:12:16 |
+----+--------------+--------+----------------------------------------------------+---------------------+

Consultas SELECT Básicas

Nesta etapa, aprenderemos como recuperar dados de nossa tabela usando instruções SELECT. Exploraremos diferentes maneiras de selecionar e formatar nossa saída.

Selecionando Colunas Específicas

Em vez de selecionar todas as colunas com *, podemos especificar exatamente quais colunas queremos ver:

SELECT name, price FROM products;

Isso nos dá uma visão mais focada de nossos dados:

+-------------+--------+
| name        | price  |
+-------------+--------+
| Coffee Maker| 49.99  |
| Toaster     | 29.99  |
| Blender     | 79.99  |
| Microwave   | 129.99 |
+-------------+--------+

Usando Aliases de Colunas

Podemos tornar nossa saída mais legível usando aliases de colunas com a palavra-chave AS:

SELECT
    name AS product_name,
    price AS retail_price,
    price * 0.8 AS sale_price
FROM products;

Esta consulta:

  • Renomeia 'name' para 'product_name'
  • Renomeia 'price' para 'retail_price'
  • Calcula um preço de venda (20% de desconto) e o nomeia 'sale_price'

Você verá uma saída como:

+-------------+-------------+------------+
| product_name| retail_price| sale_price |
+-------------+-------------+------------+
| Coffee Maker| 49.99       | 39.99      |
| Toaster     | 29.99       | 23.99      |
| Blender     | 79.99       | 63.99      |
| Microwave   | 129.99      | 103.99     |
+-------------+-------------+------------+

Filtrando Resultados

Podemos usar a cláusula WHERE para filtrar nossos resultados:

SELECT name, price
FROM products
WHERE price < 50.00;

Isso nos mostra apenas produtos com preço inferior a $50:

+-------------+-------+
| name        | price |
+-------------+-------+
| Coffee Maker| 49.99 |
| Toaster     | 29.99 |
+-------------+-------+

Atualização de Dados

Nesta etapa, aprenderemos como modificar dados existentes usando a instrução UPDATE. A instrução UPDATE nos permite alterar valores em nossas tabelas.

IMPORTANTE: Sempre use uma cláusula WHERE com instruções UPDATE! Sem WHERE, a atualização afetará TODAS as linhas da tabela.

Digamos que precisamos aumentar o preço de nossa Coffee Maker:

UPDATE products
SET price = 54.99
WHERE name = 'Coffee Maker';

Também podemos atualizar várias colunas de uma vez:

UPDATE products
SET
    price = 89.99,
    description = 'Professional-grade high-speed blender for smoothies and soups'
WHERE name = 'Blender';

Para verificar nossas atualizações:

SELECT name, price, description
FROM products
WHERE name IN ('Coffee Maker', 'Blender');

Você deve ver os valores atualizados:

+--------------+-------+---------------------------------------------------------------+
| name         | price | description                                                   |
+--------------+-------+---------------------------------------------------------------+
| Coffee Maker | 54.99 | A 12-cup drip coffee maker with programmable timer            |
| Blender      | 89.99 | Professional-grade high-speed blender for smoothies and soups |
+--------------+-------+---------------------------------------------------------------+

Exclusão de Dados

Nesta etapa final, aprenderemos como remover dados de nossas tabelas usando a instrução DELETE. Assim como UPDATE, é crucial usar WHERE com DELETE para evitar a remoção acidental de todos os dados.

Vamos remover a Toaster de nossos produtos:

DELETE FROM products
WHERE name = 'Toaster';

Para verificar a exclusão:

SELECT * FROM products;

Você deve ver todos os produtos, exceto a Toaster:

+----+-------------+-------+-----------------------------------------------------+---------------------+
| id | name        | price | description                                         | created_at          |
+----+-------------+-------+-----------------------------------------------------+---------------------+
|  1 | Coffee Maker| 54.99 | A 12-cup drip coffee maker with programmable timer | 2024-01-01 12:00:00 |
|  3 | Blender     | 89.99 | Professional-grade high-speed blender for smoothies| 2024-01-01 12:00:00 |
|  4 | Microwave   | 129.99| 1000-watt microwave with digital controls          | 2024-01-01 12:00:00 |
+----+-------------+-------+-----------------------------------------------------+---------------------+

Também podemos excluir várias linhas de uma vez. Vamos remover todos os produtos com preço superior a $100:

DELETE FROM products
WHERE price > 100;

Isso deve remover o Microwave da nossa lista de produtos.

MariaDB [store]> SELECT * FROM products;
+----+--------------+-------+---------------------------------------------------------------+---------------------+
| id | name         | price | description                                                   | created_at          |
+----+--------------+-------+---------------------------------------------------------------+---------------------+
|  1 | Coffee Maker | 54.99 | A 12-cup drip coffee maker with programmable timer            | 2024-11-07 09:12:06 |
|  3 | Blender      | 89.99 | Professional-grade high-speed blender for smoothies and soups | 2024-11-07 09:12:16 |
+----+--------------+-------+---------------------------------------------------------------+---------------------+

Resumo

Neste laboratório, cobrimos as operações fundamentais de manipulação de dados em MySQL:

  1. Instruções INSERT para adicionar linhas de dados únicas e múltiplas
  2. Consultas SELECT para recuperar e formatar dados
  3. Instruções UPDATE para modificar dados existentes
  4. Instruções DELETE para remover dados de tabelas

Essas operações formam a base da manipulação de banco de dados e são habilidades essenciais para qualquer pessoa que trabalhe com bancos de dados.