Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Resolução prova Banco de Dados - Versão1 #1

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

Rafiski
Copy link
Collaborator

@Rafiski Rafiski commented Dec 5, 2023

Resolução das questões 2 á 5 da Prova de Banco de Dados, as questões 1 ; 6 e 7 ainda estou fazendo

Copy link
Owner

@profpantoja profpantoja left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Por favor, realizar as alterações.

@@ -0,0 +1,28 @@
-- Respostas Exercicio 02- Prova Banco de Dados
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Transforme todos os arquivos com código SQL em extensão .sql;
Use o comando CTRL+ALT+F para identar o código sql.

Copy link
Owner

@profpantoja profpantoja Dec 5, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A imagem não representa um diagrama entidade-relacionamento na notação de Peter Chen.
Use a notação de Peter Chen.
Coloque uma imagem em png ou jpeg.
Como o que é pedido é a transformação do lógico para o físico, apresente o modelo físico em txt.

Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

O modelo não representa corretamente a entidade setor.
Use uma imagem para facilitar a visualização e correção.

@@ -0,0 +1,28 @@
-- Respostas Exercicio 02- Prova Banco de Dados

Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Está faltando o dicionário de dados.

idAlbum INT,
PRIMARY KEY(idTrack),
FOREIGN KEY (idMusic) REFERENCES MUSIC(idMusic),
FOREIGN KEY (idAlbum) REFERENCES ALBUM(idMusic));
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

O idAlbum não referencia Album idMusic. Verificar o correto.

FOREIGN KEY (idMusic) REFERENCES MUSIC(idMusic),
FOREIGN KEY (idAlbum) REFERENCES ALBUM(idMusic));

CREATE TABLE ALBUM(
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Verificar a ordem de precedência para criação de tabelas.

CREATE TABLE RECORDER(
idRecorder INT NOT NULL,
nome VARCHAR(50),
PRIMARY KEY(idRecorder));
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Criar o banco de dados no mySQL e verificar se tudo funciona.

São 3 as fases do Projeto de Banco de dados, são elas:
- ANÁLISE DE REQUISITOS: O primeiro passo para criação do modelo corrreto é entender a necessidade. Para isso temos que realizar uma análise de requisitos, a partir de atividades como entrevistas e reuniões, para discutir os processos que serão controlados pelo sistema e desenhar um modelo fiel que atenda as espectativas do interessado. É nesse modelo que também é desenhado o que chamamos de minimundo.

-PROJETO LÓGICO: nesta etapa, o modelo conceitual é transformado em um modelo lógico. O modelo lógico define como banco de dados será implementado em um SGBD específico.
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ele não leva em consideração o SGBD específico, apenas a tecnologia, que é o relacional.


-PROJETO LÓGICO: nesta etapa, o modelo conceitual é transformado em um modelo lógico. O modelo lógico define como banco de dados será implementado em um SGBD específico.

-PROJETO CONCEITUAL: nesta fase é construido o modelo conceitual, na forma de um diagrama de entidade relacionamento. Este modelo captura as necessidades da organização em termos de armazenamento de dados de forma independente de implementação.
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

O projeto Conceitual vem antes do projeto Lógico.


-PROJETO CONCEITUAL: nesta fase é construido o modelo conceitual, na forma de um diagrama de entidade relacionamento. Este modelo captura as necessidades da organização em termos de armazenamento de dados de forma independente de implementação.

-PROJETO FÍSICO: Nesta etapa, o modelo do banco de dados é enriquecido com detalhes que influenciam no desenpenho da base de dados, mas não intefere em sua funcionalidade. O modelo físico estabelece uma sintonia com o banco de dados.
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Como assim sintonia?

Copy link
Owner

@profpantoja profpantoja left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fazer ajustes.

Copy link
Owner

@profpantoja profpantoja left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Não encontrei a solução da primeira questão.

email texto(100),
telefone texto(50),
CHAVE(idCliente),
CHAVE_EST(idSetor) REFERENCIA Setor (idSetor)
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Se levarmos em consideração essa linha, o Setor precisa ser criado primeiro para que possa ser referenciado aqui.

email VARCHAR (50),
telefone VARCHAR (50),
PRIMARY KEY (idCliente),
FOREIGN KEY (idSetor) REFERENCES SETOR (idSetor)
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Mesma situação do anterior. Precisa criar primeiro o Setor.


CREATE TABLE CLIENTE_FISICO(
idCliente INT NOT NULL,
cpf INT (11),
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cliente Jurídico não pode ter cpf, teria que ser cnpj nesse caso.

@@ -0,0 +1,66 @@
CRIAR TABELA CLIENTE(
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Para que fique uma organização legal.
Separe o modelo físico do sql.
Matenha esse arquivo somente com o sql e crie um outro com extensão .fisico;

@@ -0,0 +1,31 @@
-- Respostas Exercicio 02- Prova Banco de Dados
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Deixe apenas um arquivo sql.
No arquivo Exercicio 2i.sql tem misturado físico com SQL.
Mantenha três arquivos como solução para esse exercício: um chamado 2.sql; o outro chamado 2.fisico; e por fim, um chamado 2.dd;

idCategory INT NOT NULL,
nome_album VARCHAR(50),
PRIMARY KEY(idAlbum),
FOREIGN KEY (idRecorder) REFERENCES RECORDER (idRecorder),
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Encontrei o seguinte erro aqui: Can't create table ExerciciosBD.ALBUM (errno: 150 "Foreign key constraint is incorrectly formed")

É importante que você rode os scripts antes de subir eles para produção.

Esse caso aqui parece ser ordem de procedência.


-PROJETO LÓGICO: nesta etapa, o modelo conceitual é transformado em um modelo lógico. O modelo lógico define como banco de dados será implementado em um SGBD específico.

-PROJETO FÍSICO: Nesta etapa, o modelo do banco de dados é enriquecido com detalhes que influenciam no desenpenho da base de dados, mas não intefere em sua funcionalidade. O modelo físico estabelece uma relação de concordância com o banco de dados.
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

O que é uma relação de concordância? Tente desenvolver mais essa ideia.


-PROJETO CONCEITUAL: nesta fase é construido o modelo conceitual, na forma de um diagrama de entidade relacionamento. Este modelo captura as necessidades da organização em termos de armazenamento de dados de forma independente de implementação.

-PROJETO LÓGICO: nesta etapa, o modelo conceitual é transformado em um modelo lógico. O modelo lógico define como banco de dados será implementado em um SGBD específico.
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ele define muito mais coisas. Uma parte faltante aqui é sobre as integridades e a normalização, que ocorrem justo nessa etapa. Complemente com essa ideia.

@@ -0,0 +1,28 @@
-- Resposta Questão 6 --
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Não. O exercício explica que a redundância pode ocorrer em especialização. Então pense em exemplos onde isso pode acontecer mas com Especialização. Existem duas formas diretas de implementação da especialização. Quais são? Quais as vantagens e desvantagens? Explore isso.

@@ -0,0 +1,10 @@
-- Respostas Exercicio 05- Prova Banco de Dados
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Coloque a extensão do arquivo como txt.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants