Buscar

Programação e Desenvolvimento de Banco de Dados

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 14 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 14 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 14 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

2023 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
PROGRAMAÇÃO E DESENVOLVIMENTO DE BANCO DE DADOS 
RELÁTORIO DE AULA PRÁTICA: 
Programação e Desenvolvimento de Banco de Dados 
 
2023 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
RELÁTORIO DE AULA PRÁTICA: 
Programação e Desenvolvimento de Banco de Dados 
 
Trabalho de portfólio apresentado como requisito parcial 
para a obtenção de média semestral. 
 
Orientadora: Prof. Anderson Emidio de Macedo 
Goncalves 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
SUMÁRIO 
1 INTRODUÇÃO ..................................................................................................... 3 
2 Desenvolvimento .................................................................................................. 4 
2.1 Criação da base de dados ................................................................................ 4 
2.2 Inserção de dados ............................................................................................ 7 
2.3 Consulta dos Dados ......................................................................................... 8 
3 CONCLUSÃO ...................................................................................................... 9 
Código ....................................................................................................................... 10 
 
 3 
1 INTRODUÇÃO 
O propósito desta atividade foi desenvolver um banco de dados 
chamado “Loja” utilizando MySQL Server, com o auxílio do software MySQL 
Workbench. O banco de dados foi desenvolvido com base no Diagrama de Entidade 
Relacionamento (DER) fornecido. 
Após a conclusão, será fornecido os códigos por completo junto a 
um link para o download de todos os arquivos. 
 
 4 
2 DESENVOLVIMENTO 
 
2.1 CRIAÇÃO DA BASE DE DADOS 
Foi criada a base de dados “Loja” e as seguintes tabelas foram 
criadas utilizando comandos DDL: 
 
 
Figura 1 - Tabela Estado 
 
 
 
 
Figura 2 - Tabela Município 
 
 
 
 
 
 5 
 
Figura 3 - Tabela Cliente 
 
 
Figura 4 - Tabela ContaReceber 
 
 
 
 
 6 
 
Foi de grande importância seguir boas práticas para a criação das 
tabelas, como a definição de chaves primárias auto incrementadas, para que cada 
registro tenha uma identificação única. Além disso, o relacionamento das tabelas foi 
implementado seguindo os diagramas entidade relacionamento fornecidos. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 7 
2.2 INSERÇÃO DE DADOS 
Na segunda etapa foi criado o script “inserir.sql” com o objetivo de 
inserir dados na tabela, simulando o uso prático das ferramentas disponíveis. 
Durante o processo, é importante se atentar para os tipos de dados e as restrições 
estabelecidas durante a criação da estrutura. Esse procedimento assegurou que os 
dados adicionados estivessem em plena consonância com as exigências do sistema, 
evitando quaisquer violações de integridade. 
 
 
Figura 5 - Dados Cliente1 
 
 
Figura 6 - Dados Cliente2 
 
 
Figura 7 - Dados Cliente3 
 
 
 
 8 
2.3 CONSULTA DOS DADOS 
Na terceira etapa foi criado o script “consulta.sql” para que se 
pudesse verificar os dados inseridos na etapa anterior retornado as contas que 
ainda não foram pagas. 
 
Figura 8 - Script consulta.sql 
 
 Graças ao filtro “WHERE” é possível separar as contas pagas das não 
pagas e retornar somente os dados requisitados. 
 
 
Figura 9 - Dados Retornados 
 
 
 9 
3 CONCLUSÃO 
As práticas de modelagem adotadas, como a implementação de 
chaves primárias auto incrementadas e a definição de relacionamentos, 
demonstraram-se cruciais para a integridade e consistência dos dados. Fica claro 
que seguir as boas práticas para criação, inserção e consulta das tabelas foi de 
extrema importância. Sem essas práticas, é quase impossível que um software 
cumpra a suas funções principalmente em banco de dados de grandes proporções 
muito comuns em uma era em que, o comercio online cresce cada vez mais e as 
redes sociais se tornam cada vez mais integradas com a sociedade em geral. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 10 
CÓDIGO 
 
https://github.com/nathanfordiani/REL-TORIO-DE-AULA-PR-TICA-Programa-o-e-
Desenvolvimento-de-Banco-de-Dados 
 
 
CRIAÇÂO DA TABELA 
 
 
 
SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, 
UNIQUE_CHECKS=0; 
SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, 
FOREIGN_KEY_CHECKS=0; 
SET @OLD_SQL_MODE=@@SQL_MODE, 
SQL_MODE='ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZER
O_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_EN
GINE_SUBSTITUTION'; 
 
CREATE SCHEMA IF NOT EXISTS `Loja` DEFAULT CHARACTER SET utf8 
; 
USE `Loja` ; 
 
CREATE TABLE IF NOT EXISTS `Loja`.`Estado` ( 
 `ID` INT NOT NULL AUTO_INCREMENT, 
 `Nome` VARCHAR(50) NOT NULL, 
 `UF` VARCHAR(2) NOT NULL, 
 PRIMARY KEY (`ID`)) 
ENGINE = InnoDB; 
 
CREATE TABLE IF NOT EXISTS `Loja`.`Municipio` ( 
 `ID` INT NOT NULL AUTO_INCREMENT, 
 `Estado_ID` INT NOT NULL, 
 `Nome` VARCHAR(45) NOT NULL, 
 `CodIBGE` INT NOT NULL, 
 PRIMARY KEY (`ID`), 
 INDEX `fk_Municipio_Estado_idx` (`Estado_ID` ASC), 
 CONSTRAINT `fk_Municipio_Estado` 
 FOREIGN KEY (`Estado_ID`) 
 REFERENCES `Loja`.`Estado` (`ID`) 
 ON DELETE NO ACTION 
 ON UPDATE NO ACTION) 
ENGINE = InnoDB; 
 
CREATE TABLE IF NOT EXISTS `Loja`.`Cliente` ( 
 `ID` INT NOT NULL AUTO_INCREMENT, 
 `Nome` VARCHAR(80) NOT NULL, 
 `CPF` VARCHAR(11) NOT NULL, 
https://github.com/nathanfordiani/REL-TORIO-DE-AULA-PR-TICA-Programa-o-e-Desenvolvimento-de-Banco-de-Dados
https://github.com/nathanfordiani/REL-TORIO-DE-AULA-PR-TICA-Programa-o-e-Desenvolvimento-de-Banco-de-Dados
 11 
 `Celular` VARCHAR(11) NULL, 
 `EndLogradouro` VARCHAR(100) NOT NULL, 
 `EndNumero` VARCHAR(45) NOT NULL, 
 `EndMunicipio` INT NULL, 
 `EndCEP` VARCHAR(45) NOT NULL, 
 `Municipio_ID` INT NOT NULL, 
 PRIMARY KEY (`ID`), 
 INDEX `fk_Cliente_Municipio1_idx` (`Municipio_ID` ASC), 
 CONSTRAINT `fk_Cliente_Municipio1` 
 FOREIGN KEY (`Municipio_ID`) 
 REFERENCES `Loja`.`Municipio` (`ID`) 
 ON DELETE NO ACTION 
 ON UPDATE NO ACTION) 
ENGINE = InnoDB; 
 
CREATE TABLE IF NOT EXISTS `Loja`.`ContaReceber` ( 
 `id` INT NOT NULL AUTO_INCREMENT, 
 `Cliente_ID` INT NOT NULL, 
 `FaturaVendaID` INT NOT NULL, 
 `DataConta` DATE NOT NULL, 
 `DataVencimento` DATE NOT NULL, 
 `Valor` DECIMAL NOT NULL, 
 `Situacao` ENUM("1", "2", "3") NOT NULL, 
 PRIMARY KEY (`id`), 
 INDEX `Cliente_ID_idx` (`Cliente_ID` ASC), 
 CONSTRAINT `Cliente_ID` 
 FOREIGN KEY (`Cliente_ID`) 
 REFERENCES `Loja`.`Cliente` (`ID`) 
 ON DELETE NO ACTION 
 ON UPDATE NO ACTION) 
ENGINE = InnoDB; 
 
 
SET SQL_MODE=@OLD_SQL_MODE; 
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS; 
SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS; 
 
 
 
 
 
 
 
 
 
 
 12 
 
 
Inserção de dados 
INSERT INTO `Loja`.`estado`(`Nome`,`UF`)VALUES('Goias','GO'); 
 
INSERT INTO 
`Loja`.`municipio`(`Estado_ID`,`Nome`,`CodIBGE`)VALUES(1,'Morrinhos',5213806); 
 
INSERT INTO 
`Loja`.`cliente`(`Nome`,`CPF`,`Celular`,`EndLogradouro`,`EndNumero`,`EndMunicipi
o`,`EndCEP`,`Municipio_ID`)VALUES('Leticia', 12345676892,11922222222,'Rua 
Desastre', 616, 1, 75650-000, 1); 
 
INSERT INTO 
`Loja`.`contareceber`(`Cliente_ID`,`FaturaVendaID`,`DataConta`,`DataVencimento` 
,`Valor`,`Situacao`)VALUES(1,1,'2022-06-14','2023-10-25',10.00,1); 
 
Consulta das tabelas 
SELECT `contareceber`.`ID`, 
`cliente`.`Nome`, 
`cliente`.`CPF`, 
 `contareceber`.`DataVencimento`, 
`contareceber`.`Valor` 
FROM `loja`.`contareceber` 
INNER JOIN 
 `loja`.`cliente` ON `contareceber`.`ID` = `cliente`.`ID` 
WHERE 
 `contareceber`.`Situacao` = 1; 
 
 
 13

Continue navegando