89
Banco de Dados
UNINTER
4
Banco de Dados
UNINTER
6
Banco de Dados
UNINTER
14
Banco de Dados
UNINTER
23
Banco de Dados
UNINTER
67
Banco de Dados
UNINTER
10
Banco de Dados
UNINTER
38
Banco de Dados
UNINTER
6
Banco de Dados
UNINTER
6
Banco de Dados
UNINTER
Texto de pré-visualização
10 1 Profª Drª Neusa Grando Banco de Dados Modelo EntidadeRelacionamento MER Aula ao Vivo 1 10 2 Modelagem Modelo Entidade Relacionamento MER Modelo Relacional Implementação 10 3 Entidade fundamental Relacionamento fundamental Modelo EntidadeRelacionamento MER Funcionario trabalha possui Entidade fraca Relacionamento fraco Dependente 10 4 Atributo simples Atributo composto Modelo EntidadeRelacionamento MER continuação Chave primária Chave estrangeira nome endereco rua numero bairro cidade estado CPF CPF PK CPF FK 10 5 Cardinalidades Um para um 11 Um para muitos 1n Muitos para muitos nn Modelo EntidadeRelacionamento MER continuação 10 6 Dado o estudo de caso elabore o Modelo Entidade Relacionamento MER isto é o modelo conceitual O Modelo EntidadeRelacionamento MER deve contemplar os seguintes itens entidades atributos relacionamentos cardinalidades chaves primárias e chaves estrangeiras Estudo de Caso Seguradora de Automóveis 10 7 Uma seguradora de automóveis necessita controlar os dados dos clientes dos automóveis das apólices e dos acidentes ocorridos Para isso contratou um profissional de Banco de Dados para modelar o Banco de Dados que armazenará os dados Estudo de Caso Seguradora de Automóveis continuação 10 8 As regras de negócio são Dos clientes devese armazenar o CPF o nome o telefone o e mail e o endereço que é composto por rua número complemento bairro CEP cidade e estado Dos carros devese armazenar o número do chassi a marca o modelo e o ano Das apólices devese armazenar o número e o valor Dos acidentes devese armazenar o local a data o horário e uma descrição Um cliente possui uma ou várias apólices Uma apólice dá cobertura a um carro Um carro pode sofrer zero ou vários registros de acidentes Estudo de Caso Seguradora de Automóveis continuação 10 9 Estudo de Caso Seguradora de Automóveis continuação Fechar Centro Universitário Internacional UNINTER Escola Superior Politécnica ESP BANCO DE DADOS Trabalho Relatório Curso Alunoa RU 1 1ª Etapa Modelagem Pontuação 30 pontos Dadas as regras de negócio abaixo listadas referentes ao estudo de caso de uma Rede de Hotéis elabore o Modelo EntidadeRelacionamento MER isto é o modelo conceitual O Modelo EntidadeRelacionamento MER deve contemplar os seguintes itens Entidades Atributos Relacionamentos Cardinalidades Chaves primárias Chaves estrangeiras Uma Rede de Hotéis necessita controlar os dados dos funcionários das unidades dos quartos dos hóspedes das reservas e dos pagamentos Para isso contratou um profissional de Banco de Dados a fim de modelar o Banco de Dados que armazenará todos os dados As regras de negócio são Funcionário Deverão ser armazenados os seguintes dados CPF nome telefone email login e senha Banco de Dados Trabalho Relatório 1 Centro Universitário Internacional UNINTER Escola Superior Politécnica ESP Hotel Deverão ser armazenados os seguintes dados identificação do hotel nome categoria telefone email e endereço sendo o endereço composto por rua número complemento bairro CEP cidade e estado Quarto Deverão ser armazenados os seguintes dados identificação do quarto número de leitos tipo standard luxo ou suíte preço da diária e status disponível ocupado ou manutenção Hóspede Deverão ser armazenados os seguintes dados CPF nome telefone e mail e endereço sendo o endereço composto por rua número complemento bairro CEP cidade e estado Reserva Deverão ser armazenados os seguintes dados identificação da reserva data de entrada data de saída e status ativa cancelada ou concluída Pagamento Deverão ser armazenados os seguintes dados identificação do pagamento forma de pagamento cartão pix ou dinheiro data do pagamento valor total e status pago ou pendente Um hotel possui um ou vários quartos Um ou vários funcionários trabalham em um hotel Um funcionário realiza uma ou várias reservas Um ou vários quartos fazem parte de uma ou várias reservas Um hóspede pode fazer uma ou várias reservas Uma reserva gera um pagamento Importante O Modelo EntidadeRelacionamento MER deve considerar somente as regras de negócio dadas não podendo ser criada nenhuma outra entidade ou atributo que não estejam nas regras de negócio Em caso de haver entidade associativa a mesma deve ser representada pela Representação 1 texto da Aula 1 Fundamentos de Banco de Dados Figura 25 Em caso de haver cardinalidade 11 a chave estrangeira deve fazer parte da entidade que possui o maior número de chaves estrangeiras Cole o Modelo EntidadeRelacionamento MER aqui Banco de Dados Trabalho Relatório 2 Centro Universitário Internacional UNINTER Escola Superior Politécnica ESP 2 2ª Etapa Implementação Considere o seguinte Modelo Relacional modelo lógico referente ao estudo de caso de uma Locadora de Veículos Com base no Modelo Relacional dado e utilizando a Structured Query Language SQL no MySQL Workbench implemente o que se pede Importante Para testar o Banco de Dados após a implementação utilize os comandos contidos no arquivo Trabalho Populando o Banco de Dados para popular as tabelas Tal arquivo contém todos os comandos de inserção dos dados fictícios necessários para a realização dos testes Pontuação 30 pontos 1 Implemente um Banco de Dados chamado LocadoraVeiculos Após implemente as tabelas conforme o Modelo Relacional dado observando as chaves primárias e as chaves estrangeiras Todos os campos de todas as tabelas não podem ser nulos not null Banco de Dados Trabalho Relatório 3 Centro Universitário Internacional UNINTER Escola Superior Politécnica ESP Cole o código aqui Pontuação 10 pontos 2 Implemente uma consulta para listar a descrição a data e o custo de todas as manutenções realizadas nos veículos Cole o código e o print resultante da consulta aqui Pontuação 10 pontos 3 Implemente uma consulta para listar o valor total arrecadado pela locadora Lembrese que pagamentos pendentes não fazem parte da soma Cole o código e o print resultante da consulta aqui Pontuação 10 pontos 4 Implemente uma consulta para listar o modelo e a marca dos veículos bem como o número de vezes que cada um foi locado A listagem deve ser mostrada em ordem decrescente pelo número de aluguéis Dica Utilize a cláusula group by Cole o código e o print resultante da consulta aqui Pontuação 10 pontos 5 Implemente uma consulta para listar o nome dos clientes que possuem pagamento pendente bem como o valor devido por eles A listagem deve ser mostrada em ordem alfabética crescente pelo nome dos clientes Dica Utilize a cláusula group by Cole o código e o print resultante da consulta aqui Banco de Dados Trabalho Relatório 4 Centro Universitário Internacional UNINTER Escola Superior Politécnica ESP BANCO DE DADOS Trabalho Relatório Curso Alunoa RU 1 1ª Etapa Modelagem Pontuação 30 pontos Dadas as regras de negócio abaixo listadas referentes ao estudo de caso de uma Rede de Hotéis elabore o Modelo EntidadeRelacionamento MER isto é o modelo conceitual O Modelo EntidadeRelacionamento MER deve contemplar os seguintes itens Entidades Atributos Relacionamentos Cardinalidades Chaves primárias Chaves estrangeiras Uma Rede de Hotéis necessita controlar os dados dos funcionários das unidades dos quartos dos hóspedes das reservas e dos pagamentos Para isso contratou um Banco de Dados Trabalho Relatório 1 Centro Universitário Internacional UNINTER Escola Superior Politécnica ESP profissional de Banco de Dados a fim de modelar o Banco de Dados que armazenará todos os dados As regras de negócio são Funcionário Deverão ser armazenados os seguintes dados CPF nome telefone email login e senha Hotel Deverão ser armazenados os seguintes dados identificação do hotel nome categoria telefone email e endereço sendo o endereço composto por rua número complemento bairro CEP cidade e estado Quarto Deverão ser armazenados os seguintes dados identificação do quarto número de leitos tipo standard luxo ou suíte preço da diária e status disponível ocupado ou manutenção Hóspede Deverão ser armazenados os seguintes dados CPF nome telefone e mail e endereço sendo o endereço composto por rua número complemento bairro CEP cidade e estado Reserva Deverão ser armazenados os seguintes dados identificação da reserva data de entrada data de saída e status ativa cancelada ou concluída Pagamento Deverão ser armazenados os seguintes dados identificação do pagamento forma de pagamento cartão pix ou dinheiro data do pagamento valor total e status pago ou pendente Um hotel possui um ou vários quartos Um ou vários funcionários trabalham em um hotel Um funcionário realiza uma ou várias reservas Um ou vários quartos fazem parte de uma ou várias reservas Um hóspede pode fazer uma ou várias reservas Banco de Dados Trabalho Relatório 2 Centro Universitário Internacional UNINTER Escola Superior Politécnica ESP Uma reserva gera um pagamento Importante O Modelo EntidadeRelacionamento MER deve considerar somente as regras de negócio dadas não podendo ser criada nenhuma outra entidade ou atributo que não estejam nas regras de negócio Em caso de haver entidade associativa a mesma deve ser representada pela Representação 1 texto da Aula 1 Fundamentos de Banco de Dados Figura 25 Em caso de haver cardinalidade 11 a chave estrangeira deve fazer parte da entidade que possui o maior número de chaves estrangeiras Banco de Dados Trabalho Relatório 3 Centro Universitário Internacional UNINTER Escola Superior Politécnica ESP Banco de Dados Trabalho Relatório 4 Centro Universitário Internacional UNINTER Escola Superior Politécnica ESP 2ª Etapa Implementação Considere o seguinte Modelo Relacional modelo lógico referente ao estudo de caso de uma Locadora de Veículos Com base no Modelo Relacional dado e utilizando a Structured Query Language SQL no MySQL Workbench implemente o que se pede Importante Para testar o Banco de Dados após a implementação utilize os comandos contidos no arquivo Trabalho Populando o Banco de Dados para popular as tabelas Tal arquivo contém todos os comandos de inserção dos dados fictícios necessários para a realização dos testes Pontuação 30 pontos 1 Implemente um Banco de Dados chamado LocadoraVeiculos Após implemente as tabelas conforme o Modelo Relacional dado observando as chaves primárias e as chaves estrangeiras Todos os campos de todas as tabelas não podem ser nulos not null Banco de Dados Trabalho Relatório 5 Centro Universitário Internacional UNINTER Escola Superior Politécnica ESP CREATE SCHEMA IF NOT EXISTS LocadoraVeiculos DEFAULT CHARACTER SET utf8 USE LocadoraVeiculos CREATE TABLE IF NOT EXISTS LocadoraVeiculosCliente idCliente INT NOT NULL CPF VARCHAR20 NOT NULL nome VARCHAR50 NOT NULL telefone VARCHAR20 NOT NULL email VARCHAR50 NOT NULL endereco VARCHAR100 NOT NULL PRIMARY KEY idCliente ENGINE InnoDB CREATE TABLE IF NOT EXISTS LocadoraVeiculosPagamento idPagamento INT NOT NULL forma ENUMCartão Pix Dinheiro NOT NULL dataPagamento DATE NOT NULL valorTotal DECIMAL72 NOT NULL estado ENUMPago Pendente NOT NULL PRIMARY KEY idPagamento ENGINE InnoDB CREATE TABLE IF NOT EXISTS LocadoraVeiculosLocacao idLocacao INT NOT NULL idCliente INT NOT NULL idPagamento INT NOT NULL dataInicio DATE NOT NULL dataFim DATE NOT NULL PRIMARY KEY idLocacao INDEX fkLocacaoClienteidx idCliente ASC VISIBLE INDEX fkLocacaoPagamento1idx idPagamento ASC VISIBLE CONSTRAINT fkLocacaoCliente FOREIGN KEY idCliente Banco de Dados Trabalho Relatório 6 Centro Universitário Internacional UNINTER Escola Superior Politécnica ESP REFERENCES LocadoraVeiculosCliente idCliente ON DELETE NO ACTION ON UPDATE NO ACTION CONSTRAINT fkLocacaoPagamento1 FOREIGN KEY idPagamento REFERENCES LocadoraVeiculosPagamento idPagamento ON DELETE NO ACTION ON UPDATE NO ACTION ENGINE InnoDB CREATE TABLE IF NOT EXISTS LocadoraVeiculosVeiculo idVeiculo INT NOT NULL modelo VARCHAR50 NOT NULL marca VARCHAR50 NOT NULL ano INT NOT NULL placa VARCHAR10 NOT NULL valorDiaria DECIMAL72 NOT NULL estado ENUMDisponivel Alugado Manutencao NOT NULL PRIMARY KEY idVeiculo ENGINE InnoDB CREATE TABLE IF NOT EXISTS LocadoraVeiculosManutencao idManutencao INT NOT NULL idVeiculo INT NOT NULL descricao VARCHAR100 NOT NULL dataManutencao DATE NOT NULL custo DECIMAL72 NOT NULL PRIMARY KEY idManutencao INDEX fkManutencaoVeiculo1idx idVeiculo ASC VISIBLE CONSTRAINT fkManutencaoVeiculo1 FOREIGN KEY idVeiculo REFERENCES LocadoraVeiculosVeiculo idVeiculo ON DELETE NO ACTION ON UPDATE NO ACTION Banco de Dados Trabalho Relatório 7 Centro Universitário Internacional UNINTER Escola Superior Politécnica ESP ENGINE InnoDB CREATE TABLE IF NOT EXISTS LocadoraVeiculosLocacaoVeiculo idLocacao INT NOT NULL idVeiculo INT NOT NULL INDEX fkLocacaoVeiculoLocacao1idx idLocacao ASC VISIBLE INDEX fkLocacaoVeiculoVeiculo1idx idVeiculo ASC VISIBLE CONSTRAINT fkLocacaoVeiculoLocacao1 FOREIGN KEY idLocacao REFERENCES LocadoraVeiculosLocacao idLocacao ON DELETE NO ACTION ON UPDATE NO ACTION CONSTRAINT fkLocacaoVeiculoVeiculo1 FOREIGN KEY idVeiculo REFERENCES LocadoraVeiculosVeiculo idVeiculo ON DELETE NO ACTION ON UPDATE NO ACTION ENGINE InnoDB Pontuação 10 pontos 2 Implemente uma consulta para listar a descrição a data e o custo de todas as manutenções realizadas nos veículos USE LocadoraVeiculos SELECT descricao dataManutencao custo FROM manutencao Banco de Dados Trabalho Relatório 8 Centro Universitário Internacional UNINTER Escola Superior Politécnica ESP Pontuação 10 pontos 3 Implemente uma consulta para listar o valor total arrecadado pela locadora Lembrese que pagamentos pendentes não fazem parte da soma USE LocadoraVeiculos SELECT SUMvalorTotal AS totalarrecadado FROM Pagamento WHERE estado Pago Pontuação 10 pontos 4 Implemente uma consulta para listar o modelo e a marca dos veículos bem como o número de vezes que cada um foi locado A listagem deve ser mostrada em ordem decrescente pelo número de aluguéis Dica Utilize a cláusula group by Banco de Dados Trabalho Relatório 9 Centro Universitário Internacional UNINTER Escola Superior Politécnica ESP USE LocadoraVeiculos SELECT Vmodelo Vmarca COUNTLVidLocacao AS totalalugueis FROM Veiculo V LEFT JOIN LocacaoVeiculo LV ON VidVeiculo LVidVeiculo GROUP BY Vmodelo Vmarca ORDER BY totalalugueis DESC Pontuação 10 pontos 5 Implemente uma consulta para listar o nome dos clientes que possuem pagamento pendente bem como o valor devido por eles A listagem deve ser mostrada em ordem alfabética crescente pelo nome dos clientes Dica Utilize a cláusula group by USE LocadoraVeiculos SELECT Cnome SUMPvalorTotal AS valordevido FROM Cliente C JOIN Locacao L ON CidCliente LidCliente Banco de Dados Trabalho Relatório 10 Centro Universitário Internacional UNINTER Escola Superior Politécnica ESP JOIN Pagamento P ON LidPagamento PidPagamento WHERE Pestado Pendente GROUP BY Cnome ORDER BY Cnome ASC Banco de Dados Trabalho Relatório 11
89
Banco de Dados
UNINTER
4
Banco de Dados
UNINTER
6
Banco de Dados
UNINTER
14
Banco de Dados
UNINTER
23
Banco de Dados
UNINTER
67
Banco de Dados
UNINTER
10
Banco de Dados
UNINTER
38
Banco de Dados
UNINTER
6
Banco de Dados
UNINTER
6
Banco de Dados
UNINTER
Texto de pré-visualização
10 1 Profª Drª Neusa Grando Banco de Dados Modelo EntidadeRelacionamento MER Aula ao Vivo 1 10 2 Modelagem Modelo Entidade Relacionamento MER Modelo Relacional Implementação 10 3 Entidade fundamental Relacionamento fundamental Modelo EntidadeRelacionamento MER Funcionario trabalha possui Entidade fraca Relacionamento fraco Dependente 10 4 Atributo simples Atributo composto Modelo EntidadeRelacionamento MER continuação Chave primária Chave estrangeira nome endereco rua numero bairro cidade estado CPF CPF PK CPF FK 10 5 Cardinalidades Um para um 11 Um para muitos 1n Muitos para muitos nn Modelo EntidadeRelacionamento MER continuação 10 6 Dado o estudo de caso elabore o Modelo Entidade Relacionamento MER isto é o modelo conceitual O Modelo EntidadeRelacionamento MER deve contemplar os seguintes itens entidades atributos relacionamentos cardinalidades chaves primárias e chaves estrangeiras Estudo de Caso Seguradora de Automóveis 10 7 Uma seguradora de automóveis necessita controlar os dados dos clientes dos automóveis das apólices e dos acidentes ocorridos Para isso contratou um profissional de Banco de Dados para modelar o Banco de Dados que armazenará os dados Estudo de Caso Seguradora de Automóveis continuação 10 8 As regras de negócio são Dos clientes devese armazenar o CPF o nome o telefone o e mail e o endereço que é composto por rua número complemento bairro CEP cidade e estado Dos carros devese armazenar o número do chassi a marca o modelo e o ano Das apólices devese armazenar o número e o valor Dos acidentes devese armazenar o local a data o horário e uma descrição Um cliente possui uma ou várias apólices Uma apólice dá cobertura a um carro Um carro pode sofrer zero ou vários registros de acidentes Estudo de Caso Seguradora de Automóveis continuação 10 9 Estudo de Caso Seguradora de Automóveis continuação Fechar Centro Universitário Internacional UNINTER Escola Superior Politécnica ESP BANCO DE DADOS Trabalho Relatório Curso Alunoa RU 1 1ª Etapa Modelagem Pontuação 30 pontos Dadas as regras de negócio abaixo listadas referentes ao estudo de caso de uma Rede de Hotéis elabore o Modelo EntidadeRelacionamento MER isto é o modelo conceitual O Modelo EntidadeRelacionamento MER deve contemplar os seguintes itens Entidades Atributos Relacionamentos Cardinalidades Chaves primárias Chaves estrangeiras Uma Rede de Hotéis necessita controlar os dados dos funcionários das unidades dos quartos dos hóspedes das reservas e dos pagamentos Para isso contratou um profissional de Banco de Dados a fim de modelar o Banco de Dados que armazenará todos os dados As regras de negócio são Funcionário Deverão ser armazenados os seguintes dados CPF nome telefone email login e senha Banco de Dados Trabalho Relatório 1 Centro Universitário Internacional UNINTER Escola Superior Politécnica ESP Hotel Deverão ser armazenados os seguintes dados identificação do hotel nome categoria telefone email e endereço sendo o endereço composto por rua número complemento bairro CEP cidade e estado Quarto Deverão ser armazenados os seguintes dados identificação do quarto número de leitos tipo standard luxo ou suíte preço da diária e status disponível ocupado ou manutenção Hóspede Deverão ser armazenados os seguintes dados CPF nome telefone e mail e endereço sendo o endereço composto por rua número complemento bairro CEP cidade e estado Reserva Deverão ser armazenados os seguintes dados identificação da reserva data de entrada data de saída e status ativa cancelada ou concluída Pagamento Deverão ser armazenados os seguintes dados identificação do pagamento forma de pagamento cartão pix ou dinheiro data do pagamento valor total e status pago ou pendente Um hotel possui um ou vários quartos Um ou vários funcionários trabalham em um hotel Um funcionário realiza uma ou várias reservas Um ou vários quartos fazem parte de uma ou várias reservas Um hóspede pode fazer uma ou várias reservas Uma reserva gera um pagamento Importante O Modelo EntidadeRelacionamento MER deve considerar somente as regras de negócio dadas não podendo ser criada nenhuma outra entidade ou atributo que não estejam nas regras de negócio Em caso de haver entidade associativa a mesma deve ser representada pela Representação 1 texto da Aula 1 Fundamentos de Banco de Dados Figura 25 Em caso de haver cardinalidade 11 a chave estrangeira deve fazer parte da entidade que possui o maior número de chaves estrangeiras Cole o Modelo EntidadeRelacionamento MER aqui Banco de Dados Trabalho Relatório 2 Centro Universitário Internacional UNINTER Escola Superior Politécnica ESP 2 2ª Etapa Implementação Considere o seguinte Modelo Relacional modelo lógico referente ao estudo de caso de uma Locadora de Veículos Com base no Modelo Relacional dado e utilizando a Structured Query Language SQL no MySQL Workbench implemente o que se pede Importante Para testar o Banco de Dados após a implementação utilize os comandos contidos no arquivo Trabalho Populando o Banco de Dados para popular as tabelas Tal arquivo contém todos os comandos de inserção dos dados fictícios necessários para a realização dos testes Pontuação 30 pontos 1 Implemente um Banco de Dados chamado LocadoraVeiculos Após implemente as tabelas conforme o Modelo Relacional dado observando as chaves primárias e as chaves estrangeiras Todos os campos de todas as tabelas não podem ser nulos not null Banco de Dados Trabalho Relatório 3 Centro Universitário Internacional UNINTER Escola Superior Politécnica ESP Cole o código aqui Pontuação 10 pontos 2 Implemente uma consulta para listar a descrição a data e o custo de todas as manutenções realizadas nos veículos Cole o código e o print resultante da consulta aqui Pontuação 10 pontos 3 Implemente uma consulta para listar o valor total arrecadado pela locadora Lembrese que pagamentos pendentes não fazem parte da soma Cole o código e o print resultante da consulta aqui Pontuação 10 pontos 4 Implemente uma consulta para listar o modelo e a marca dos veículos bem como o número de vezes que cada um foi locado A listagem deve ser mostrada em ordem decrescente pelo número de aluguéis Dica Utilize a cláusula group by Cole o código e o print resultante da consulta aqui Pontuação 10 pontos 5 Implemente uma consulta para listar o nome dos clientes que possuem pagamento pendente bem como o valor devido por eles A listagem deve ser mostrada em ordem alfabética crescente pelo nome dos clientes Dica Utilize a cláusula group by Cole o código e o print resultante da consulta aqui Banco de Dados Trabalho Relatório 4 Centro Universitário Internacional UNINTER Escola Superior Politécnica ESP BANCO DE DADOS Trabalho Relatório Curso Alunoa RU 1 1ª Etapa Modelagem Pontuação 30 pontos Dadas as regras de negócio abaixo listadas referentes ao estudo de caso de uma Rede de Hotéis elabore o Modelo EntidadeRelacionamento MER isto é o modelo conceitual O Modelo EntidadeRelacionamento MER deve contemplar os seguintes itens Entidades Atributos Relacionamentos Cardinalidades Chaves primárias Chaves estrangeiras Uma Rede de Hotéis necessita controlar os dados dos funcionários das unidades dos quartos dos hóspedes das reservas e dos pagamentos Para isso contratou um Banco de Dados Trabalho Relatório 1 Centro Universitário Internacional UNINTER Escola Superior Politécnica ESP profissional de Banco de Dados a fim de modelar o Banco de Dados que armazenará todos os dados As regras de negócio são Funcionário Deverão ser armazenados os seguintes dados CPF nome telefone email login e senha Hotel Deverão ser armazenados os seguintes dados identificação do hotel nome categoria telefone email e endereço sendo o endereço composto por rua número complemento bairro CEP cidade e estado Quarto Deverão ser armazenados os seguintes dados identificação do quarto número de leitos tipo standard luxo ou suíte preço da diária e status disponível ocupado ou manutenção Hóspede Deverão ser armazenados os seguintes dados CPF nome telefone e mail e endereço sendo o endereço composto por rua número complemento bairro CEP cidade e estado Reserva Deverão ser armazenados os seguintes dados identificação da reserva data de entrada data de saída e status ativa cancelada ou concluída Pagamento Deverão ser armazenados os seguintes dados identificação do pagamento forma de pagamento cartão pix ou dinheiro data do pagamento valor total e status pago ou pendente Um hotel possui um ou vários quartos Um ou vários funcionários trabalham em um hotel Um funcionário realiza uma ou várias reservas Um ou vários quartos fazem parte de uma ou várias reservas Um hóspede pode fazer uma ou várias reservas Banco de Dados Trabalho Relatório 2 Centro Universitário Internacional UNINTER Escola Superior Politécnica ESP Uma reserva gera um pagamento Importante O Modelo EntidadeRelacionamento MER deve considerar somente as regras de negócio dadas não podendo ser criada nenhuma outra entidade ou atributo que não estejam nas regras de negócio Em caso de haver entidade associativa a mesma deve ser representada pela Representação 1 texto da Aula 1 Fundamentos de Banco de Dados Figura 25 Em caso de haver cardinalidade 11 a chave estrangeira deve fazer parte da entidade que possui o maior número de chaves estrangeiras Banco de Dados Trabalho Relatório 3 Centro Universitário Internacional UNINTER Escola Superior Politécnica ESP Banco de Dados Trabalho Relatório 4 Centro Universitário Internacional UNINTER Escola Superior Politécnica ESP 2ª Etapa Implementação Considere o seguinte Modelo Relacional modelo lógico referente ao estudo de caso de uma Locadora de Veículos Com base no Modelo Relacional dado e utilizando a Structured Query Language SQL no MySQL Workbench implemente o que se pede Importante Para testar o Banco de Dados após a implementação utilize os comandos contidos no arquivo Trabalho Populando o Banco de Dados para popular as tabelas Tal arquivo contém todos os comandos de inserção dos dados fictícios necessários para a realização dos testes Pontuação 30 pontos 1 Implemente um Banco de Dados chamado LocadoraVeiculos Após implemente as tabelas conforme o Modelo Relacional dado observando as chaves primárias e as chaves estrangeiras Todos os campos de todas as tabelas não podem ser nulos not null Banco de Dados Trabalho Relatório 5 Centro Universitário Internacional UNINTER Escola Superior Politécnica ESP CREATE SCHEMA IF NOT EXISTS LocadoraVeiculos DEFAULT CHARACTER SET utf8 USE LocadoraVeiculos CREATE TABLE IF NOT EXISTS LocadoraVeiculosCliente idCliente INT NOT NULL CPF VARCHAR20 NOT NULL nome VARCHAR50 NOT NULL telefone VARCHAR20 NOT NULL email VARCHAR50 NOT NULL endereco VARCHAR100 NOT NULL PRIMARY KEY idCliente ENGINE InnoDB CREATE TABLE IF NOT EXISTS LocadoraVeiculosPagamento idPagamento INT NOT NULL forma ENUMCartão Pix Dinheiro NOT NULL dataPagamento DATE NOT NULL valorTotal DECIMAL72 NOT NULL estado ENUMPago Pendente NOT NULL PRIMARY KEY idPagamento ENGINE InnoDB CREATE TABLE IF NOT EXISTS LocadoraVeiculosLocacao idLocacao INT NOT NULL idCliente INT NOT NULL idPagamento INT NOT NULL dataInicio DATE NOT NULL dataFim DATE NOT NULL PRIMARY KEY idLocacao INDEX fkLocacaoClienteidx idCliente ASC VISIBLE INDEX fkLocacaoPagamento1idx idPagamento ASC VISIBLE CONSTRAINT fkLocacaoCliente FOREIGN KEY idCliente Banco de Dados Trabalho Relatório 6 Centro Universitário Internacional UNINTER Escola Superior Politécnica ESP REFERENCES LocadoraVeiculosCliente idCliente ON DELETE NO ACTION ON UPDATE NO ACTION CONSTRAINT fkLocacaoPagamento1 FOREIGN KEY idPagamento REFERENCES LocadoraVeiculosPagamento idPagamento ON DELETE NO ACTION ON UPDATE NO ACTION ENGINE InnoDB CREATE TABLE IF NOT EXISTS LocadoraVeiculosVeiculo idVeiculo INT NOT NULL modelo VARCHAR50 NOT NULL marca VARCHAR50 NOT NULL ano INT NOT NULL placa VARCHAR10 NOT NULL valorDiaria DECIMAL72 NOT NULL estado ENUMDisponivel Alugado Manutencao NOT NULL PRIMARY KEY idVeiculo ENGINE InnoDB CREATE TABLE IF NOT EXISTS LocadoraVeiculosManutencao idManutencao INT NOT NULL idVeiculo INT NOT NULL descricao VARCHAR100 NOT NULL dataManutencao DATE NOT NULL custo DECIMAL72 NOT NULL PRIMARY KEY idManutencao INDEX fkManutencaoVeiculo1idx idVeiculo ASC VISIBLE CONSTRAINT fkManutencaoVeiculo1 FOREIGN KEY idVeiculo REFERENCES LocadoraVeiculosVeiculo idVeiculo ON DELETE NO ACTION ON UPDATE NO ACTION Banco de Dados Trabalho Relatório 7 Centro Universitário Internacional UNINTER Escola Superior Politécnica ESP ENGINE InnoDB CREATE TABLE IF NOT EXISTS LocadoraVeiculosLocacaoVeiculo idLocacao INT NOT NULL idVeiculo INT NOT NULL INDEX fkLocacaoVeiculoLocacao1idx idLocacao ASC VISIBLE INDEX fkLocacaoVeiculoVeiculo1idx idVeiculo ASC VISIBLE CONSTRAINT fkLocacaoVeiculoLocacao1 FOREIGN KEY idLocacao REFERENCES LocadoraVeiculosLocacao idLocacao ON DELETE NO ACTION ON UPDATE NO ACTION CONSTRAINT fkLocacaoVeiculoVeiculo1 FOREIGN KEY idVeiculo REFERENCES LocadoraVeiculosVeiculo idVeiculo ON DELETE NO ACTION ON UPDATE NO ACTION ENGINE InnoDB Pontuação 10 pontos 2 Implemente uma consulta para listar a descrição a data e o custo de todas as manutenções realizadas nos veículos USE LocadoraVeiculos SELECT descricao dataManutencao custo FROM manutencao Banco de Dados Trabalho Relatório 8 Centro Universitário Internacional UNINTER Escola Superior Politécnica ESP Pontuação 10 pontos 3 Implemente uma consulta para listar o valor total arrecadado pela locadora Lembrese que pagamentos pendentes não fazem parte da soma USE LocadoraVeiculos SELECT SUMvalorTotal AS totalarrecadado FROM Pagamento WHERE estado Pago Pontuação 10 pontos 4 Implemente uma consulta para listar o modelo e a marca dos veículos bem como o número de vezes que cada um foi locado A listagem deve ser mostrada em ordem decrescente pelo número de aluguéis Dica Utilize a cláusula group by Banco de Dados Trabalho Relatório 9 Centro Universitário Internacional UNINTER Escola Superior Politécnica ESP USE LocadoraVeiculos SELECT Vmodelo Vmarca COUNTLVidLocacao AS totalalugueis FROM Veiculo V LEFT JOIN LocacaoVeiculo LV ON VidVeiculo LVidVeiculo GROUP BY Vmodelo Vmarca ORDER BY totalalugueis DESC Pontuação 10 pontos 5 Implemente uma consulta para listar o nome dos clientes que possuem pagamento pendente bem como o valor devido por eles A listagem deve ser mostrada em ordem alfabética crescente pelo nome dos clientes Dica Utilize a cláusula group by USE LocadoraVeiculos SELECT Cnome SUMPvalorTotal AS valordevido FROM Cliente C JOIN Locacao L ON CidCliente LidCliente Banco de Dados Trabalho Relatório 10 Centro Universitário Internacional UNINTER Escola Superior Politécnica ESP JOIN Pagamento P ON LidPagamento PidPagamento WHERE Pestado Pendente GROUP BY Cnome ORDER BY Cnome ASC Banco de Dados Trabalho Relatório 11