Faculdade Anhanguera Educacional
Analise e Desenvolvimento de Sistemas
Programação e Desenvolvimento de Banco de Dados
Guilherme Antunes Mendes dos Santos
Relatório Técnico: Aula pratica Programação e Desenvolvimento de
Banco de Dados
1. Introdução
Este relatório técnico descreve o desenvolvimento de um banco de dados
denominado "Loja2", criado por meio do MySQL Workbench com comandos em
SQL. O objetivo do projeto é criar as estruturas de dados com base em um
diagrama entidade-relacionamento (DER) pré-definido, inserir dados nas
tabelas e criar uma visão para consultar as contas a receber ainda não pagas.
O projeto abrange todas as etapas do processo de criação, desde a definição
de tabelas e relacionamentos até a inserção de dados e consultas.
2. Título
Desenvolvimento e Implementação de um Banco de Dados SQL: Projeto
Loja2
3. Sumário
1. Introdução..........................................................................................2
2. Título..................................................................................................3
3. Sumário..............................................................................................4
4. Métodos..............................................................................................5
5. Resultados..........................................................................................9
6. Conclusão..........................................................................................10
4. Métodos
A metodologia adotada para o desenvolvimento deste projeto inclui as
seguintes etapas:
4.1 Criação do Banco de Dados
O banco de dados foi criado com o seguinte comando:
CREATE DATABASE IF NOT EXISTS Loja2;
USE Loja2;
4.2 Definição das Estruturas de Tabelas
Foram criadas as tabelas Estado, Municipio, Cliente e ContaReceber com as
respectivas chaves primárias e estrangeiras. As definições detalhadas estão
descritas a seguir.
Tabela Estado
CREATE TABLE Estado (
ID INT PRIMARY KEY AUTO_INCREMENT,
Nome VARCHAR(100) NOT NULL,
UF CHAR(2) NOT NULL
);
Tabela Municipio
CREATE TABLE Municipio (
ID INT PRIMARY KEY AUTO_INCREMENT,
FK_EstadoID INT NOT NULL,
Nome VARCHAR(100) NOT NULL,
CodIBGE VARCHAR(10) NOT NULL,
FOREIGN KEY (FK_EstadoID) REFERENCES Estado(ID)
);
Tabela Cliente
CREATE TABLE Cliente (
ID INT PRIMARY KEY AUTO_INCREMENT,
Nome VARCHAR(80) NOT NULL,
CPF VARCHAR(11) NOT NULL UNIQUE,
Celular VARCHAR(11) NOT NULL,
EndLogradouro VARCHAR(100) NOT NULL,
EndNumero VARCHAR(10) NOT NULL,
EndMunicipio INT NOT NULL,
EndCep CHAR(8) NOT NULL,
FK_Municipio_ID INT NOT NULL,
FOREIGN KEY (FK_Municipio_ID) REFERENCES Municipio(ID)
);
Tabela ContaReceber
CREATE TABLE ContaReceber (
ID INT PRIMARY KEY AUTO_INCREMENT,
FK_Cliente_ID INT NOT NULL,
FaturaVendaID INT NOT NULL,
DataConta DATE NOT NULL,
DataVencimento DATE NOT NULL,
Valor DECIMAL(18,2) NOT NULL,
Situacao ENUM('1', '2', '3') NOT NULL,
FOREIGN KEY (FK_Cliente_ID) REFERENCES Cliente(ID)
);
4.3 Inserção de Dados
Os dados foram inseridos em todas as tabelas com o seguinte script:
Inserção na Tabela Estado
INSERT INTO Estado (Nome, UF) VALUES
('Parana', 'PR'),
('Santa Catarina', 'SC'),
('Tocantins', 'TO');
Inserção na Tabela Municipio
INSERT INTO Municipio (FK_EstadoID, Nome, CodIBGE) VALUES
(1, 'Londrina', '3550308'),
(2, 'Florianopolis', '3304557'),
(3, 'Palmas', '3106200');
Inserção na Tabela Cliente
INSERT INTO Cliente (Nome, CPF, Celular, EndLogradouro, EndNumero,
EndMunicipio, FK_Municipio_ID, EndCEP) VALUES
('João Barbosa', '12345678910', '9999999999', 'Rua A', '123', 1, 1, '47730000'),
('Paulo Souza', '12345678911', '8888888888', 'Rua B', '456', 2, 2, '47730022'),
('Rodrigo Pereira', '12345678922', '7777777777', 'Rua C', '789', 3, 3, '47730033');
Inserção na Tabela ContaReceber
INSERT INTO ContaReceber (FK_Cliente_ID, FaturaVendaID, DataConta,
DataVencimento, Valor, Situacao) VALUES
(1, 105, '2024-06-07', '2025-08-02', 100.00, '1'),
(2, 106, '2024-05-03', '2025-02-02', 200.00, '2'),
(3, 107, '2024-02-04', '2025-06-07', 300.00, '3');
4.4 Criação da View para Consulta
A visão ContasNaoPagas foi criada para retornar as contas a receber que ainda não
foram pagas:
CREATE VIEW ContasNaoPagas AS
SELECT
CR.ID AS 'ID da conta a receber',
C.Nome AS 'Nome do Cliente',
C.CPF AS 'CPF do Cliente',
CR.DataVencimento AS 'Data de vencimento',
CR.Valor AS 'Valor da conta'
FROM ContaReceber CR
JOIN Cliente C ON CR.FK_Cliente_ID = C.ID
WHERE CR.Situacao = '1';
5. Resultados
Foram realizadas consultas para verificar os dados inseridos e a view
ContasNaoPagas:
-- Verificação da tabela Estado
SELECT * FROM Estado;
-- Verificação da tabela Municipio
SELECT * FROM Municipio;
-- Verificação da tabela Cliente
SELECT * FROM Cliente;
-- Verificação da tabela ContaReceber
SELECT * FROM ContaReceber;
-- Verificação da view ContasNaoPagas
SELECT * FROM ContasNaoPagas;
6. Conclusão
A implementação do banco de dados "Loja2" demonstrou o processo completo
de criação e gestão de um sistema de banco de dados relacional, abrangendo
a definição das estruturas de dados, inserção de registros e consultas. O uso
de comandos DDL, DML e DQL no MySQL Workbench foi eficaz para atender
aos requisitos de modelagem de dados, garantindo integridade referencial e
funcionalidade adequada.
SOFTWARE INSTALADO
DIAGRAMA