Introdução
Neste projeto, você aprenderá como criar um banco de dados de sistema de gerenciamento de pessoal usando MySQL. O banco de dados armazenará informações sobre funcionários, suas unidades de trabalho e detalhes residenciais.
👀 Visualização
MariaDB [companySys]> DESC company;
+--------------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------------+-------------+------+-----+---------+-------+
| company_name | varchar(50) | NO | PRI | NULL | |
| city | varchar(10) | YES | | NULL | |
+--------------+-------------+------+-----+---------+-------+
2 rows in set (0.001 sec)
🎯 Tarefas
Neste projeto, você aprenderá:
- Como acessar o MySQL usando o comando
sudo - Como criar um banco de dados chamado
companySys - Como criar três tabelas:
company,workeemploy - Como definir as restrições de chave primária (primary key) e chave estrangeira (foreign key) apropriadas para cada tabela
- Como inserir dados nas tabelas
🏆 Conquistas
Após concluir este projeto, você será capaz de:
- Compreender os fundamentos da criação e gerenciamento de bancos de dados
- Implementar operações CRUD (Create, Read, Update, Delete) em um banco de dados relacional
- Estabelecer relacionamentos entre tabelas usando chaves primárias e estrangeiras
- Gerenciar e manipular dados em um banco de dados de sistema de gerenciamento de pessoal
Acessar o MySQL e Criar o Banco de Dados
Nesta etapa, você aprenderá como acessar o MySQL usando o comando sudo e criar o banco de dados companySys.
- Abra um terminal e execute o seguinte comando para iniciar o serviço MySQL:
sudo service mysql start
- Acesse o MySQL usando o comando
sudo:
sudo mysql
- Abra o arquivo
creatComDatabase.sql. - No arquivo
creatComDatabase.sql, crie o banco de dadoscompanySyscom o conjunto de caracteres UTF-8:
CREATE DATABASE IF NOT EXISTS companySys DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
- Use o banco de dados
companySys:
USE companySys;
Criar as Tabelas
Nesta etapa, você criará as três tabelas: company, work e employ.
- Abra o arquivo
creatComDatabase.sqle crie as seguintes tabelas no arquivo, em ordem. - Crie a tabela
company:
CREATE TABLE IF NOT EXISTS company (
company_name varchar(50) NOT NULL,
city varchar(10),
PRIMARY KEY (company_name)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
- Crie a tabela
work:
CREATE TABLE IF NOT EXISTS work (
per_name varchar(10) NOT NULL,
company_name varchar(50),
salary decimal(10,2),
PRIMARY KEY (per_name),
FOREIGN KEY (company_name) REFERENCES company(company_name)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
- Crie a tabela
employ:
CREATE TABLE IF NOT EXISTS employ (
id int NOT NULL,
person_name varchar(10),
street varchar(100),
city varchar(10),
PRIMARY KEY (id),
FOREIGN KEY (person_name) REFERENCES work(per_name)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
Inserir os Dados
Nesta etapa, você irá inserir os dados nas três tabelas.
- Abra o arquivo
creatComDatabase.sqle continue a partir da etapa anterior para adicionar a seguinte instrução SQL. - Insira dados na tabela
company:
INSERT INTO company (company_name, city) VALUES
('ABC Company', 'New York'),
('LabEx', 'London'),
('Company 3', 'Paris');
- Insira dados na tabela
work:
INSERT INTO work (per_name, company_name, salary) VALUES
('John', 'ABC Company', 5000.00),
('Jane', 'LabEx', 6000.00),
('Mary', 'Company 3', 5500.00);
- Insira dados na tabela
employ:
INSERT INTO employ (id, person_name, street, city) VALUES
(1, 'John', '123 Main Street', 'New York'),
(2, 'Jane', '456 Park Avenue', 'London'),
(3, 'Mary', '789 Broadway', 'Paris');
Verificar o Banco de Dados
Nesta etapa, você verificará o banco de dados descrevendo as tabelas.
- No cliente MySQL, execute o seguinte comando para executar o script SQL:
MariaDB [(none)]> SOURCE /home/labex/project/creatComDatabase.sql;
- Descreva a tabela
company:
DESC company;
MariaDB [companySys]> DESC company;
+--------------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------------+-------------+------+-----+---------+-------+
| company_name | varchar(50) | NO | PRI | NULL | |
| city | varchar(10) | YES | | NULL | |
+--------------+-------------+------+-----+---------+-------+
2 rows in set (0.001 sec)
- Descreva a tabela
employ:
DESC employ;
MariaDB [companySys]> DESC employ;
+-------------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------------+--------------+------+-----+---------+-------+
| id | int(11) | NO | PRI | NULL | |
| person_name | varchar(10) | YES | MUL | NULL | |
| street | varchar(100) | YES | | NULL | |
| city | varchar(10) | YES | | NULL | |
+-------------+--------------+------+-----+---------+-------+
4 rows in set (0.001 sec)
- Descreva a tabela
work:
DESC work;
MariaDB [companySys]> DESC work;
+--------------+---------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------------+---------------+------+-----+---------+-------+
| per_name | varchar(10) | NO | PRI | NULL | |
| company_name | varchar(50) | YES | MUL | NULL | |
| salary | decimal(10,2) | YES | | NULL | |
+--------------+---------------+------+-----+---------+-------+
3 rows in set (0.001 sec)
Você criou com sucesso o banco de dados do sistema de gerenciamento de pessoal e inseriu os dados. Parabéns!
Resumo
Parabéns! Você concluiu este projeto. Você pode praticar mais laboratórios no LabEx para aprimorar suas habilidades.
