Manipulação Abrangente de Dados MySQL

MySQLBeginner
Pratique Agora

Introdução

Neste projeto, você aprenderá como realizar operações DML (Data Manipulation Language) abrangentes na tabela Employees (emp) no banco de dados Employees. Você aprenderá como inserir novos registros, atualizar registros existentes e excluir registros da tabela.

👀 Pré-visualização

Pré-visualização das operações DML

🎯 Tarefas

Neste projeto, você aprenderá:

  • Como acessar o MySQL usando o comando sudo sem uma senha
  • Como importar dados de um arquivo SQL para o banco de dados MySQL
  • Como inserir novos registros na tabela emp usando uma única instrução SQL
  • Como atualizar o supervisor de um funcionário na tabela emp
  • Como atualizar todos os registros na tabela emp com um valor comm NULL para definir comm como 0
  • Como excluir o registro com o maior número de funcionário da tabela emp
  • Como excluir todos os funcionários que se reportam diretamente a um gerente específico na tabela emp

🏆 Conquistas

Após concluir este projeto, você será capaz de:

  • Realizar operações DML abrangentes em uma tabela de banco de dados MySQL
  • Entender como usar instruções SQL para inserir, atualizar e excluir dados
  • Ganhar experiência no gerenciamento e manipulação de dados em um banco de dados relacional
  • Desenvolver habilidades de resolução de problemas, completando as várias tarefas do projeto

Acessar o MySQL e Importar Dados

Nesta etapa, você aprenderá como acessar o MySQL usando o comando sudo sem nenhuma senha e importar os dados de /home/labex/project/personnel.sql para o banco de dados personnel.

  1. Inicie o serviço MySQL:
sudo service mysql start
  1. Acesse o MySQL usando o comando sudo:
sudo mysql
  1. Importe os dados de /home/labex/project/personnel.sql para o banco de dados personnel:
SOURCE /home/labex/project/personnel.sql;
  1. Mude para o banco de dados personnel:
USE personnel;
✨ Verificar Solução e Praticar

Inserir Novos Registros

Nesta etapa, você aprenderá como adicionar dois novos registros à tabela emp usando uma única instrução SQL.

Adicione os dois registros a seguir à tabela emp:

INSERT INTO emp (empno, ename, job, mgr, hiredate, sal, comm, deptno)
VALUES (9878, 'JOHN', 'CLERK', 7499, '2022-01-05', 1800, 0, 10),
       (8868, 'JANE', 'CLERK', 7566, '2022-02-12', 2500, NULL, 20);
✨ Verificar Solução e Praticar

Atualizar Supervisor do Funcionário

Nesta etapa, você aprenderá como alterar o gerente direto do funcionário SCOTT na tabela emp para o gerente direto do funcionário BLAKE.

UPDATE emp
SET mgr = (SELECT mgr
           FROM emp
           WHERE ename = 'BLAKE')
WHERE ename = 'SCOTT';
✨ Verificar Solução e Praticar

Atualizar Valores de Comissão Nulos

Nesta etapa, você aprenderá como atualizar todas as entradas na tabela emp que possuem um valor comm de NULL para definir comm como 0.

UPDATE emp
SET comm = 0
WHERE comm IS NULL;
✨ Verificar Solução e Praticar

Excluir o Número de Funcionário Mais Alto

Nesta etapa, você aprenderá como remover a entrada com o número de funcionário mais alto da tabela emp.

DELETE FROM emp
WHERE empno = (SELECT MAX(empno) FROM emp);
✨ Verificar Solução e Praticar

Excluir Funcionários que Reportam a BLAKE

Nesta etapa, você aprenderá como excluir todos os funcionários que se reportam diretamente a BLAKE na tabela emp.

DELETE FROM emp
WHERE mgr = (SELECT empno FROM emp WHERE ename = 'BLAKE');

Após as etapas acima, você pode consultar os seguintes resultados para verificar:

MariaDB [personnel]> select * from emp;
+-------+--------+-----------+------+------------+---------+------+--------+
| empno | ename  | job       | mgr  | hiredate   | sal     | comm | deptno |
+-------+--------+-----------+------+------------+---------+------+--------+
|  7369 | SMITH  | CLERK     | 7902 | 1980-12-17 |  800.00 | 0.00 |     20 |
|  7566 | JONES  | MANAGER   | 7839 | 1981-04-02 | 2975.00 | 0.00 |     20 |
|  7698 | BLAKE  | MANAGER   | 7839 | 1981-05-01 | 2850.00 | 0.00 |     30 |
|  7782 | CLARK  | MANAGER   | 7839 | 1981-06-09 | 2450.00 | 0.00 |     10 |
|  7788 | SCOTT  | ANALYST   | 7839 | 1987-06-13 | 3000.00 | 0.00 |     20 |
|  7839 | KING   | PRESIDENT | NULL | 1981-11-17 | 5000.00 | 0.00 |     10 |
|  7876 | ADAMS  | CLERK     | 7788 | 1987-06-13 | 1100.00 | 0.00 |     20 |
|  7902 | FORD   | ANALYST   | 7566 | 1981-12-03 | 3000.00 | 0.00 |     20 |
|  7934 | MILLER | CLERK     | 7782 | 1982-01-23 | 1300.00 | 0.00 |     10 |
|  8868 | JANE   | CLERK     | 7566 | 2022-02-12 | 2500.00 | 0.00 |     20 |
+-------+--------+-----------+------+------------+---------+------+--------+
10 rows in set (0.000 sec)
✨ Verificar Solução e Praticar

Resumo

Parabéns! Você concluiu este projeto. Você pode praticar mais laboratórios no LabEx para aprimorar suas habilidades.